Haskell Platform 2012.2.0.0 released - includes GHC 7.4.1
hackage.haskell.org
hackage.haskell.org
I applaud the Haskell community for taking care of the non-technicals on their flagship download.
What is the state of the art for the new kids on the block like Clojure, Scala and Go ?
Some good stuff in this release --- preliminary ARM support is exciting for obvious reasons, and the new kinds flags are fun if you like that sort of thing (see http://blog.omega-prime.co.uk/?p=127 for some examples)
The platform is basically a bundle of GHC, cabal and some other build tools, and some "sanctioned" Haskell libraries.
The big win for everyone is that GHC 7.4.1 support in the Haskell platform opens up doing "cabal install" for lots of cutting edge packages like accelerate.
https://github.com/byrongibson/scripts/tree/master/install/h...
TLDR: Install GHC (binary) to a custom location like /opt/haskell/ghc, then add it to the system with the Debian update-alternatives tool, repeat with Haskell Platform. Only difference is you build Platform from source. update-alternatives scripts included for both.
In the case of Ubuntu, they're just downstream consumers of the Debian Haskell packaging team's efforts, and as a result are sometimes out of sync, http://packages.debian.org/search?keywords=haskell-platform
Lucid Lynx was announced in 2009, and at there time there was no Haskell Platform in Debian to adopt. More recent Ubuntu versions support the HP, however.
Also, you'll probably need to make sure you've got all the required libraries and their versions [2], 10.04 may need some of them upgraded, not sure.
If that doesn't work, if you have dependency issues and can't fix them, then I suggest installing Ubuntu Server 12.04 in a virtual machine and playing with Haskell there instead. Ubuntu Server is relatively small, a base install in a VM is only about 1.5GB.
1. http://news.ycombinator.com/item?id=4062692
2. http://www.vex.net/~trebla/haskell/haskell-platform.xhtml
When I want to make sweeping changes, I can trust the compiler to remind me everything that needs to be fixed.
I barely have to test anything, because if it compiles, more than 90% of the time, it will Just Work. When I do test, Haskell makes testing far easier, with packages like QuickCheck and its rich types.
I don't write performance intensive code, but when I wrote this kind of code in Python, I still had to battle with performance problems a lot. In Haskell, performance is great out of the box and I rarely have to deal with that.
Haskell gives me useful guarantees that make mechanical refactorings so much easier, leading to more code quality.
Haskell is lazy allowing me to write more modular code, and enabling a lot of useful techniques (See [1]).
Haskell gives me access to state of the art techniques in various fields (accelerate, safe transactional memory, nested data parallelism, vector and list fusion, ...).
Haskell expands my mind, and makes me understand code and computation more deeply.
There are so many reasons to use Haskell...
There are a few reasons not to use Haskell, but the most major one, in my opinion, is the initial difficulty of learning it.
Overcoming that difficulty is well worth it for career programmers, in my opinion.
[1] http://www.cs.kent.ac.uk/people/staff/dat/miranda/whyfp90.pd...
If you already know what haskell is about, id say its killer feature is the rich type system. Not only is it very complete (including support for generics, overloading and much more) but the ecosystem as a whole is oriented towards static safety guarantees and having the compiler help you avoi errors. For example, option types make so you never ever get a nullpointerexception and after you get the hang of it you can also start encoding other proprties of your own. As a bonus, the language itself is quite clean and pretty, something I find surprising for a language designed by comitee.