[Haskell-cafe] Small optimisation question
Stefan O'Rear
stefanor at cox.net
Sat Nov 17 11:04:20 EST 2007
On Sat, Nov 17, 2007 at 04:01:34PM +0000, Andrew Coppin wrote:
> Suppose I write something like this:
>
> foo :: [Int]
> foo = concat (replicate 4 [4,7,2,9])
>
> The value of "foo" is completely determined at compile-time. So, will the
> compiler generate calls to concat and replicate, or will it just insert a
> large list constant here?
>
> Obviously, once somebody has completely examined the contents of "foo",
> after that point it won't matter either way. I'm just curiose.
> Concatinating some strings is cheap; I sometimes write constructs like the
> above using much more expensive operations. (Expensive in time; the space
> taken up by the result isn't that great.)
The compiler will generate calls to concat and replicate.
Stefan, who is pretty sure he has a proposal for generalized folding
pragmas
Stefan
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://www.haskell.org/pipermail/haskell-cafe/attachments/20071117/60729b7d/attachment.bin
More information about the Haskell-Cafe
mailing list