Utmj3ofhcftzxd8apkqd
SkillsCast

Change in an Immutable World – Taming IO, ST, and the Demons of Unsafety

12th October 2017 in London at CodeNode

There are 36 other SkillsCasts available from Haskell eXchange 2017

Please log in to watch this conference skillscast.

Https s3.amazonaws.com prod.tracker2 resource 41088130 skillsmatter conference skillscast o9nohu

In Haskell, *everything* is immutable – yet you can print to the terminal, read files, and mutate arrays in place. There are many myths about the apparent type system breakouts and compiler hacks necessary to reconcile these principles. But as it turns out, the concepts are not contradictory at all, there is a purely functional and clean solution!

During this talk, you will discover what it »means« to do IO in Haskell, how it differs from ST, and under what circumstances the infamous »unsafe« functions can be used.

YOU MAY ALSO LIKE:

Thanks to our sponsors

Change in an Immutable World – Taming IO, ST, and the Demons of Unsafety

David Luposchainsky

David has been a Haskell enthusiast ever since he (was) stumbled upon it in early 2012 as a physics student. After spending a lot of time with it and talking to others in #haskell, he proposed the unifying the Applicative-Monad hierarchy and removing the fail function from the Monad class to the mailing lists. The former is live as of GHC 7.8, the latter is in a backwards-compatible slow transitional phase for the next couple of compiler versions. As of 2016, he is member of the Core Language committee to work on the next Haskell standard.

SkillsCast

Please log in to watch this conference skillscast.

Https s3.amazonaws.com prod.tracker2 resource 41088130 skillsmatter conference skillscast o9nohu

In Haskell, *everything* is immutable – yet you can print to the terminal, read files, and mutate arrays in place. There are many myths about the apparent type system breakouts and compiler hacks necessary to reconcile these principles. But as it turns out, the concepts are not contradictory at all, there is a purely functional and clean solution!

During this talk, you will discover what it »means« to do IO in Haskell, how it differs from ST, and under what circumstances the infamous »unsafe« functions can be used.

YOU MAY ALSO LIKE:

Thanks to our sponsors

About the Speaker

Change in an Immutable World – Taming IO, ST, and the Demons of Unsafety

David Luposchainsky

David has been a Haskell enthusiast ever since he (was) stumbled upon it in early 2012 as a physics student. After spending a lot of time with it and talking to others in #haskell, he proposed the unifying the Applicative-Monad hierarchy and removing the fail function from the Monad class to the mailing lists. The former is live as of GHC 7.8, the latter is in a backwards-compatible slow transitional phase for the next couple of compiler versions. As of 2016, he is member of the Core Language committee to work on the next Haskell standard.

Photos