Haskell is pure functional programming language that employs LazyEvaluation and supports generic or PolymorphicTypes.
It has some cool concepts like the dot operator. If you remember your calculus, it used the . for functional composition: so does Haskell! This allows you to do something similar to the pipe operator used in shell scripting.
-- sieve: prints the number of prime numbers between 2 and 100000
sieve :: [Int? -> [Int? sieve [? = [? sieve (h:t) = h : sieve [x?
main = (putStrLn . show . length . sieve) [2..100000?
1? Gofer was a subset of Haskell, HUGS now implements full Haskell.
CategoryProgrammingLanguages, CategoryFunctionalProgrammingLanguages