Functional Geekery Episode 107 – Julie Moronuki

In this episode I talk with Julie Moronuki. We catch up about “Haskell Book”, cover the upcoming Joy of Haskell, lessons learned teaching Haskell in user groups, other projects, linguistics, and more.

Our Guest, Julie Moronuki

@argumatronic on Twitter
GinBaby on Github
Joy of Haskell
@joyofhaskell on Twitter

Conference Announcements

The Strange Loop coming! It will be held in St. Louis, MO on September 28-30, 2017 at the Peabody Opera House. To submit your CfP, visit

PWLConf 2017 will be taking place September 28th in St. Louis, MO, before Strange Loop. Visit for more information and to stay updated on latest announcements.

Open FSharp will be taking place the 28th-29th of September in San Francisco, California. Visit for more information and to register.

elm-conf is returning to St. Louis on September 28, 2017 for a day of learning, speaking, and connecting with the Elm language community. For more information and to register visit

RacketCon is October 7th & 8th at the University of Washington, with keynote speakers Dan Friedman and Will Byrd. Visit for more information and to register.

Celebrate the 10th anniversary of the release of Clojure October the 12th – 14th at the Clojure/Conj in Baltimore, Maryland. Visit for more information and to register.

LambdaWorld will be taking place in Cadiz, Spain on October 26th and 27th. For more information visit and to keep updated visit

CodeMesh is coming up November 8th and 9th in London. For more information, and to keep an eye open for registration, visit

Moonconf will be taking place the 9th-11th of November. For more information visit

Clojure SYNC will be taking place in New Orleans on February 15th & 16th of 2018. For more information and to register visit:

LambdaDays 2018 will be taking place February 22nd and 23rd in Kraków, Poland. For more information, and to register, visit

If you have a conference related to functional programming, contact me, and I will be happy to announce it.


Some of you have asked how you can support Functional Geekery, in that vein,
Functional Geekery now has a Patreon Page.

If that is one of the ways you would like to show your support, you can
find out more at

Topics [@5:19]

About Julie
Julie on Episode 19
Haskell Programming from first principles
Update to “Haskell Book” since last time Julie and Chris were guests
Goal of being precise in the Haskell Book
Resetting pre-conceived baggage
Lambda Calculus as the first chapter
“I wish people would just read the chapter and let go of their preconceived notions of what it will be”
Teaching Haskell to her son to teach math
Chris Smith
“Baby’s First Category Theory” book
Kids ability to pick up abstract ideas
Teaching Haskell in user groups
Joy of Haskell
Chris Martin
Origin of Joy of Haskell
Introduction to some of the advanced topics you might hear about in Haskell
Lens library
Opal Eye library
Getting to be comfortable reading types
What made Julie decide to write the second book
“Since my mission is to get more people to enjoy Haskell, to love it the way I do”
“Whatever they want to do, I want to help them do it in Haskell”
“Learning a language isn’t hard, it’s all the other stuff”
Separating out the pure from the impure
Nix and NixOS
Looking back at linguistics and how it might tie to category theory
Types should make illegal states irrepresentable
Noam Chomsky
Goal of generating only legal sentences from abstract rules
The goal of trying to find a universal abstract pattern to generate all the legal phrase structures of a language
Shower thought as verbs as TypeClasses
Giving an upcoming talk at Haskell eXchange 2017
hands-on-haskell-meetups project
Upcoming Roguelike project in Haskell
Tips for evaluating whether to write a monad tutorial
Monad Tutorial in JavaScript
Making the target audience explicit
“Every tutorial should start with ‘You don’t need to understand monads to do IO'”

As always, a giant Thank You goes to David Belcher for the logo design.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.