\w Haskell Haskell is a pure, statically typed, lazy functional programming language --- \w Hello World! Put the following in the file hello.hs: main = putStrLn "Hello, World!" And complie it to a executable: $ ghc -o hello hello.hs Alternatively; $ ghci >>> putStrLn "Hello, world!" --- \w Simple function L>>doubleMe x = x + x >>>doubleMe 9 >>>doubleMe 22.3 --- \w Pattern Matching >>>sayMe :: (Integral a) => a -> String >>>sayMe 1 = "One!" >>>sayMe 2 = "Two!" >>>sayMe 3 = "Three!" >>>sayMe 4 = "Four!" >>>sayMe 5 = "Five!" >>>sayMe x = "Not between 1 and 5" --- \w Lists and Lazyness >>>take 5 [1..] >>>zip [1..] ["apple", "orange", "cherry", "mango"] >>>take 5 [ x | x <- [50..], x `mod` 7 == 3] L>>boomBangs xs = [ if x < 10 then "BOOM!" else "BANG!" | x <- xs, odd x] --- \w Higher order functions: >>>map (\\x -> x * x) [1..5] --- https://github.com/fokot/howerpoint