[Haskell-cafe] "Spinless Tagless G-Machine" erratum?

Tom Ellis tom-lists-haskell-cafe-2013 at jaguarpaw.co.uk
Tue Jun 17 20:57:17 UTC 2014

I am reading SPJ's seminal work "Implementing lazy functional languages on
stock hardware: the Spinless Tagless G-machine" (1992) and I am confused by
something which may be a minor notational error, or may be a key detail I am

The paper is available here


On page 26 we have

    aList = {} \n Cons {thing,nil}
    nil = {} \n Nil {}

but I have not seen this use of the notation elsewhere in the paper.  It
strikes me that this should be

    aList = {} \n {} -> Cons {thing,nil}
    nil = {} \n {} -> Nil {}

Is my intuition correct, or am I missing a key detail?



More information about the Haskell-Cafe mailing list