If you do any programming, you may have heard of a strange language called Haskell. It’s gaining rapidly in popularity, and has many cool features.
- Implicit Strong Typing – It provides the compile time error checking that one gets with C++ or Java generics, but it deduces types on its own without explicit programmer input (of course, the programmer can over-ride this if needed).
- Functional – This is a limitation that results in a strength. Functional programming means once you assign a variable you can never change it. This restriction on the programmer frees the compiler to perform many optimizations.
- Shared Transactional Memory – Sometimes it is too inconvenient to program without mutable state, so Haskell provides you with an escape hatch from functional programming. With Shared Transactional Memory you can write sections of code that modify memory arbitrarily without fear of deadlocks or race conditions.
Check out the tutorial: Learn Haskell now!.