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
  )
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to