17 Jun
2004
17 Jun
'04
1 p.m.
1) Is there a more efficient definition of hyperseq that does not traverse the data structure twice? The "show" function traverses the structure once but I found it to be much slower.
I think DeepSeq is what you're looking for. I've had all these problems and more and written down the advice people gave me at http://users.aber.ac.uk/afc/stricthaskell.html (DeepSeq is included as an appendix).
2) In this application the uses of lazy evaluation are rare and easily eliminated (zip xs [1..] and so on); is there some hidden GHC option that evaluates everything strictly?
I'd like this too. Amanda