[Haskell-cafe] Maintaining laziness

Henning Thielemann lemming at henning-thielemann.de
Mon Dec 29 12:41:02 EST 2008


In case someone cares - after some battles with functions that are less 
lazy than expected, I have written a tutorial on how to get functions lazy 
and how to test, whether they are actually lazy:
  http://www.haskell.org/haskellwiki/Maintaining_laziness

I found it especially enlightening, that one can avoid a 'force' function 
in a lazy parser by making the possibility of a parser failure explicit in 
its type. I.e. a parser that cannot fail, need no 'force'. (I learnt that 
in polyparse the 'force' function is hidden in 'apply':
   http://hackage.haskell.org/packages/archive/polyparse/1.1/doc/html/Text-ParserCombinators-PolyLazy.html#v%3Aapply  )


More information about the Haskell-Cafe mailing list