<br><br><div><span class="gmail_quote">On 8/17/07, <b class="gmail_sendername">Kim-Ee Yeoh</b> <<a href="mailto:a.biurvOir4@asuhan.com">a.biurvOir4@asuhan.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br><br>Lennart Augustsson wrote:<br>><br>> And as a previous poster showed, ghc does concatenate strings.<br>><br><br>And Haskell (as in the current language definition) does not.<br>I was talking about Haskell.
</blockquote><div><br>Haskell says nothing about compile time or run time in the language definition. Nor does it say exactly when things are evaluated. Even the tag line for Haskell says "non-strict" rather than lazy.
<br>So Haskell semantics allows many evaluation strategies, and evaluating terminating constant expression at compile time is certainly one of them. You don't have to, but it's permissible.<br><br> -- Lennart<br>