At 03:32 PM 10/8/2004, Marcin Kowalczyk wrote:
Andrew Butterfield <[EMAIL PROTECTED]> writes:

>>I though clean was always strict, and that was the major difference
>>between clean and haskell (that and the fact clean is a proprietry
>>language)
>
> No - Clean is pure and lazy like Haskell,

But it uses explicit strictness annotations a lot, and provides strict
and/or unboxed versions of various fundamental types (e.g. tuples),
with some implicit coercions.

It is of course not the language that uses strictness annotations. Clean programs without strictness annotations are perfectly lazy. Clean has a powerful strictness analysis that includes only safe strictness to function arguments.


Programmers *can* include strictness annotations, exactly for the reasons that were mentioned in this thread, namely to influence the evaluation strategy in such a way that heap consumption and/or run time decrease. In addition, this can be done light-weight because annotations are added only to function argument types and data types, instead of modifying the code by inserting strict evaluator functions.

Regards,
Peter Achten


N.B. My new email address is : [EMAIL PROTECTED] The University of Nijmegen has changed its name to Radboud University Nijmegen

_______________________________________________
Haskell-Cafe mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to