[Haskell-cafe] Byte Histogram
Roel van Dijk
vandijk.roel at gmail.com
Mon Feb 7 22:43:29 CET 2011
On 7 February 2011 22:00, Andrew Coppin <andrewcoppin at btinternet.com> wrote:
> I clearly have my languages mixed up.
> The language I'm thinking of required all variables (even top-level ones) to
> be declared with "let" - unless the definition is recursive, in which case
> you have to say "letrec" (i.e., the compiler it too stupid to deduce this
> automatically). Apparently that isn't Clean...
You are not necessarily wrong. Clean, like Haskell, is a moving
target. To quote the paper "Exchanging Sources Between Clean and
The year of 1987 was a founding one for two pure, lazy, and
strongly typed functional programming languages. Clean (Brus et
al., 1987) was presented to the public for the first time and
the first steps towards a common functional language, later
named Haskell, were taken (Hudak et al., 2007).
Clean was conceived at the Radboud University Nijmegen as a core
language that is directly based on the computational model of
functional term graph rewriting to generate efficient code. It
also serves as an intermediate language for the compilation of
other functional languages (Koopman and Nöcker, 1988;
Plasmeijer and van Eekelen, 1993). For these reasons, it
deliberately used a sparse syntax (van Eekelen et al., 1990):
“... at some points one can clearly recognize that [..] Clean
is a compromise between a functional programming language and
an intermediate language used to produce efficient code. For
instance, a minimal amount of syntactic sugar is added in [..]
Clean.”. Later, the core language was sugared.
The Clean of 1987—1994 sounds a lot like the language you are
1 - http://www.cs.ru.nl/~thomas/publications/groj10-exchanging-sources-between.pdf
More information about the Haskell-Cafe