Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>This is probably not what you had in mind in terms of an introductory text, but Edward Yang has an ongoing series of blog posts discussing the Haskell heap, how thunks are implemented, etc.</p> <p>It's entertaining, both with the illustrations and also by virtue of explicating things without delving into too much detail for someone new to Haskell. The series covers many of your questions:</p> <ul> <li><a href="http://blog.ezyang.com/2011/04/the-haskell-heap/" rel="noreferrer">The Haskell heap and how thunks are stored</a> - the first post in the series</li> <li><a href="http://blog.ezyang.com/2011/05/bindings-and-cafs-on-the-haskell-heap/" rel="noreferrer">Bindings and CAFs</a></li> <li><a href="http://blog.ezyang.com/2011/05/unraveling-the-mystery-of-the-io-monad/" rel="noreferrer">How the IO monad gets translated into primitives</a></li> </ul> <p>On a more technical level, there are a number of papers that cover (in concert with other things), parts of what you're wanting to know.:</p> <ul> <li><a href="http://research.microsoft.com/en-us/um/people/simonpj/papers/parallel-gc/index.htm" rel="noreferrer">A paper by SPJ, Simon Marlow et al on GC in Haskell</a> - I haven't read it, but since GC often represents a good porton of the work Haskell does, it should give insight.</li> <li><a href="http://www.haskell.org/haskellwiki/Language_and_library_specification#The_Haskell_2010_report" rel="noreferrer">The Haskell 2010 report</a> - I'm sure you'll have heard of this, but it's too good not to link to. Can make for dry reading in places, but one of the best ways to understand what makes Haskell the way it is, at least the portions I've read.</li> <li><a href="http://research.microsoft.com/en-us/um/people/simonpj/papers/history-of-haskell/index.htm" rel="noreferrer">A history of Haskell</a> - is more technical than the name would suggest, and offers some very interesting views into Haskell's design, and the decisions behind the design. You can't help but better understand Haskell's implementation after reading it.</li> </ul>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload