[Haskell-cafe] Haskell time line?
nowgate at yahoo.com
Thu Jan 20 15:40:10 CET 2011
Thanks. I've been reading the Hudak paper. Interesting stuff.
Maybe a better question would be which of these features, from
*weren't* present at first launch?
Haskell features lazy evaluation, pattern matching, list comprehensions, typeclasses, and type polymorphism. It is a purely functional language, which means that in general, functions in Haskell do not have side effects. There is a distinct type for representing side effects, orthogonal
to the type of functions. A pure function may return a side effect
which is subsequently executed, modeling the impure functions of other
Haskell has a strong, static type system based on Hindley–Milner type inference. Haskell's principal innovation in this area is to add type classes, which were originally conceived as a principled way to add overloading to the language, but have since found many more uses.
The type which represents side effects is an example of a monad. Monads are a general framework which can model different kinds of computation, including error handling, nondeterminism, parsing, and software transactional memory. Monads are defined as ordinary datatypes, but Haskell provides some syntactic sugar for their use.
--- On Thu, 1/20/11, Henk-Jan van Tuyl <hjgtuyl at chello.nl> wrote:
From: Henk-Jan van Tuyl <hjgtuyl at chello.nl>
Subject: Re: [Haskell-cafe] Haskell time line?
To: haskell-cafe at haskell.org, "michael rice" <nowgate at yahoo.com>
Date: Thursday, January 20, 2011, 5:03 AM
On Thu, 20 Jan 2011 03:49:49 +0100, michael rice <nowgate at yahoo.com> wrote:
> The Haskell language is some twenty years old. Is there a time line for what features were in the language's initial release and what has been added along the way?
For recent changes, see the page:
Henk-Jan van Tuyl
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe