Hacker News new | ask | show | jobs
Haskell Platform 2012.2.0.0 released - includes GHC 7.4.1 (hackage.haskell.org)
136 points by MtnViewMark 5124 days ago
10 comments

The Haskell Platform landing page is consistently beautiful. One of the prettiest landing pages I've come across. It lends a great deal of credibility to a technology when the up-front page looks like it was taken care of diligently. Contrast that to a page with only some text, a tarball link, and a mailing list (no names given, surely the reader can think of an example).

I applaud the Haskell community for taking care of the non-technicals on their flagship download.

I really like how they tie each release to a season. This way the page for each version is visually different from the last version (so it's easy to realize it was updated), but they still have a consistent theme.
Exactly. For how often the spj comment about "avoid success at all costs" is thrown about in the haskell community, it seems like they can't avoid success :)
I'm still tippy-toeing in the Haskell waters .. but the availability of seemingly mature "elbow-grease" tools like profilers, debuggers and code coverage evaluators is what attracts me to Haskell.

What is the state of the art for the new kids on the block like Clojure, Scala and Go ?

Clojure, at least, can use most of the Java profiling & debugging tools. Under the hood, the class names shown get a little baroque but it's still recognizably relatable to the source.
Go can be debugged with gdb > 7.1 and is profiled with pprof.
Release notes here: http://www.haskell.org/ghc/docs/7.4.1/html/users_guide/relea...

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)

Those are actually the release notes for GHC (the "standard" Haskell compiler) itself, which is shipped as part of the platform, but is not it.

The platform is basically a bundle of GHC, cabal and some other build tools, and some "sanctioned" Haskell libraries.

Had a fairly painless upgrade from the previous haskell platform.

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.

For anyone using Debian or a derivative and who wants to build from source and/or install without using the package manager, here's one way using Debian update-alternatives tool:

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.

Can anyone from this project or knowledgable about it comment on why Haskell Platform isn't available for Ubuntu 10.04 which is a LTS release?
HP on Ubuntu is listed here : http://packages.ubuntu.com/search?keywords=haskell-platform

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.

Use this [1] to install and maintain various ghc/platform pairs on older versions of Ubuntu. It uses Debian's update-alternatives tool to install multiple versions side-by-side and manage which version is 'active'.

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

Anyone using Haskell and why?
I'm using Haskell because I'm more productive in it than in any other language. The code is elegant and concise, and is of high quality.

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...

Parsec was Haskell's 'killer app' for me, but I tend to do most tasks in it now that involve some kind of data processing. Economical syntax, strong support for function composition, pattern matching, and type classes are the main draws for me. I have also learned to appreciate enforced purity and the abundance of operators, two of the biggest hurdles coming from stateful, imperative, mainstream languages. I prefer a development style in which small, single-purpose 'components' can be built up in the REPL and plugged together. Haskell is very well suited to this. Especially once I realized the GHC compiler was really telling me useful things and not just trying to piss me off. I have a love/hate relationship with lazy evaluation.
Nine times out of ten, when I'm done using Parsec I find myself wishing I were using Happy and Alex instead. Parsec seems to be powerful and liberating to a lot of people but I guess I had lex and yacc drilled into me hard enough that I haven't managed to let go yet.
If you dont know anything about haskell (orat leastanother similar language). Then do yorself a favour and go learn more about it :)

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.

I'm obsessed with programming languages and code beauty. I enjoy the pseudo-mathematical confidence Haskell gives me. There are several languages on my list, but I'm more productive and currently more satisfied with the results with Haskell than any of the others. I recommend giving it a look if you want to see something different.
I'd use Haskell for everything if I could, but the JVM and Python still have compelling use cases (libraries, frameworks, ubiquity).
I really would like to use haskell (ghc) even more but the lack of 64 support on windows is a realworld troublemaker. When your doing anything with large dataset you must constantly think about what will happen when lazyness and garbage collector kicks you in the face because you hit the classic win32 bit 2GB upper limit. Profiling and watch for spaceleaks will save you but you wouldn't even be doing this in a proper 64bits environment.
Ah, fwiw I haven't used Windows since 2007 so this wasn't on my radar, but I do hope they get that fixed. Or maybe the Haskell team is intentionally dragging their feet there, in order to "avoid success at all costs"...
I'm learning it right now. Looking specifically at Haskell web frameworks like Snap and Yesod.
What is the defacto IDE/editor for Haskell? I've messed around with Leksah, which looks like it's pretty nice, but I have absolutely no idea how it works.
There really isn't a de-facto IDE/editor. The Emacs support continues to improve; Vim support is quite strong. There's EclipseFP for Eclipse. I have used Leksah and like it, but usually use TextMate.
If you don't have any religious issues with Java or Eclipse, then EclipseFP is the best one currently, http://eclipsefp.github.com/.
I use Leksah for larger projects. I use just my favorite text editor (Sublime Text 2) and cabal/ghc/ghci in a shell window for smaller.
Why does it open a new Safari window after the installation? That's pretty annoying but besides that I'm happy about every new version.
Because Apple's installer framework has the option to open a document after installation is complete: We have it open the start.html page. Alas, Apple's framework always opens web pages with Safari, no matter what the user has set as their default browser. I don't know why, since it is just the standard "open" action - suspect it has to do with the Installer running as root. If anyone knows a work around, I'm all ears!
Maybe you could ask the user if it's okay to open the page after the installation.
Links on the website need to be updated.
If you mean the Haskell Platform site, try refreshing in your browser.