Functional Geekery Episode 38 – Dr. Conrad Barski

In this episode I talk with Dr. Conrad Barski. We talk his background in computers and medicine; entry into functional programming with Haskell and Lisp; ClojureScript with Om, React, and GraphQL; and end with his latest interest in block chains as distributed concurrent data structures.

Our Guest, Dr. Conrad Barski

Conrad is @lisperati on Twitter


This episode is sponsored by’s Online Mentoring has just launched. It is step-by-step online mentoring that takes you from Clojure dabbler to Clojure professional. Sign up with the link to get 50% off the first month!


LambdaDays 2016 will be taking place on the 18th and 19th of February in Kraków, Poland. The CFP and registration has opened, so make sure to visit to find out more. And make sure to use code FunkyGeekz4dWin to get 10% off registration.

:clojureD 2016 will be taking place on the 20th of February in Berlin, Germany. The CFP has opened, so make sure to visit to find out more.

Erlang Factory San Fransisco will be taking place on the 10th and 11th of March, with training on the 7th through the 9th of March and the 14th through the 16th of March. The Call for Talks is now open through December 15th, and the Very Early Bird registration is open as well.

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


About Dr. Conrad Barski
Land of Lisp
Conrad’s entrance into programming and how that relates to his M.D.
Conrad’s discovery of Lisp
Bjarne Stroustrup saying “look at what the functional programming people are doing”
Venturing into Haskell
Why Common Lisp was the choice over a Scheme
Anaphoric Macros
Casting SPELs in Lisp
“Why don’t we turn the Lisp REPL into Zork
No Starch Press
Realm of Racket
The appeal of using games as the examples in his books
Experience in Haskell
“If I knew I would live for a million years, I would spend the first 30 learning Haskell”
Difference in ways of thinking between Haskell and Common Lisp or Clojure
Phil Bagwell’s paper on Persistent Data Structures
Getting into Clojure from Common Lisp
Arc by Paul Graham
Common core between Clojure and ClojureScript and cljx
Graph query languages, e.g. GraphQL and Falcor
Om from David Nolen
Om Next
Cursors in Om
setq in Common Lisp
The benefit of Immutable Persistent Data Structures in React rendering
Querying the data structure for app state in Om Next
Commander Keen by John Carmack
Go Channels, core.async, and Hoare’s Communicating Sequential Processes
Bitcoin and Block Chains
Smart Contracts
Removing the traditional client server model with a peer-to-peer version
Paxos and Raft
Confirmation times for code changes as part of block chain events
Bitcoin for the Befuddled
Contact Conrad if you have experience with Block chains and distributed databases

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