Speaker: John Gallagher
Networking with Monads
- Discuss what makes a monad (bind / return)
- Show how Optional and Result are monads
- Discuss "Deferred" (Swift implementation of http://ocaml.janestreet.com/ocaml-core/108.00.02/doc/async_core/Deferred.html)
- Briefly mention monad transformers (for working with
Deferred<Result<T>>
)
- Demo simple chat client/server that uses all of these concepts (e.g., how "connect and handshake" is relatively simple with monadic error handling)
About John
Worked in HPC (high-performance computing) for several years before joining Big Nerd Ranch in mid-2013. Develop iOS apps for clients, teach iOS courses. Currently developing materials for our "Beginning iOS with Swift" bootcamp.