Please log in to watch this conference skillscast.
The STG is the lowest functional intermediate representation of GHC-Haskell, and the gateway between the functional world and the metal. At this level, many common questions are answered, such as when stack and heap are accessed, why space leaks happen, or why certain algorithms are surprisingly inefficient.
With this talk, you will discover into the operational
semantics of Haskell, by executing a couple of small programs everyone should be
familiar with, and watching what happens to stack and heap during execution, such as in the classical foldl (+) 0 overflow.
Functional and low-level: watching the STG execute
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.