Penguin
Note: You are viewing an old revision of this page. View the current version.

Haskell is another one of those functional programming languages. To quote http://www.haskell.org, "In particular, it is a polymorphicly typed, lazy, purely functional language".

Everything is a function in Haskell. Everything. If you are used to languages like C or Java, Haskell can be quite hard to learn.
Although it will be an eye-opener, problems that seemed terribly difficult in C will suddenly become easy to solve -- GlynWebster

It does have some quite cool concepts though. One in particular is the dot . operator. If you remember your calculus, you use the . for functional composition: so does Haskell! This allows you to do something similar to the pipe operator used in shell scripting.

It also does stuff like LazyEvaluation, supports generic or PolymorphicTypes, and is 'purely functional' -- this means you can even do mathematical proof on your programs.

See http://www.haskell.org for more info. A short snippet of some Haskell code from a book

mergE (a:x) (b:y)

| (a<b)

= a : mergE x (b:y)

| (a==b)

= a : mergE x y

| otherwise

= b : mergE (a:x) y

mergE (a:x) [? = (a:x) mergE [? (b:y) = (b:y) mergE [? [? = [?