Question About lists

Andrew J Bromage ajb@spamcop.net
Wed, 1 Jan 2003 13:26:40 +1100


G'day all.

On Mon, Dec 30, 2002 at 01:47:37PM -0600, Artie Gold wrote:

> One suggestion, though is that you're working too hard; there's really 
> no reason to define a locally defined function. The much simpler:
> 
> long [] = 0
> long (x:xs) = 1 + long xs
> 
> will do quite nicely.

It has quite different performance characteristics, though.  In
particular, this uses O(n) stack space whereas the accumulator one
uses O(1) stack space.

Cheers,
Andrew Bromage