What I learned from my first serious attempt low-level Haskell programming

Simon Marlow simonmarhaskell at gmail.com
Wed Apr 11 03:43:33 EDT 2007

Lennart Augustsson wrote:
> So then tail calls should be very cheap when most of the arguments don't 
> change.

Yes, but the problem tends to be the arguments that change, and the fact that 
they are passed on the stack.  A C loop would keep the loop-carried variables in 
registers.  On x86_64 you get better code becuase some of the args are passed in 
registers, but it's not really proper loop optimisation.

We know what needs to be done, and we plan to make progress on this soon, 
hopefully over the summer.


More information about the Libraries mailing list