9

I think great technology is invisible.

Besides the usual suspects (GHC, Xmonad, proprietary trading software) what great examples are there of end-user software written in Haskell?

I think good examples are FreeArc, Hledger and "Nikki And The Robots". Do you have more examples (full blown GUI apps, small CLI tools, etc)?

Edit: For example, I am fascinated by Wings3D, because, while it's written in Erlang, users cannot tell that. It just works. Among Haskell's weak spots are cross-platform GUIs. There are not many GUI apps written in Haskell in general and most of them are not easy to use, install or even compile. What are good examples to learn from how to make hard things look easy?

6
  • It will be interesting to see if this question stays open. It feels borderline not constructive, but at the same time could elicit some really interesting answers.
    – Matt Ellen
    Commented Jun 17, 2011 at 11:51
  • Lenny222, could you expand on why those examples are good? I think this would encourage good answer.
    – Matt Ellen
    Commented Jun 17, 2011 at 11:52
  • @Matt I'm betting dollars to doughnuts it will stay. After all, it's about FP.
    – quant_dev
    Commented Jun 17, 2011 at 12:10
  • When I read the title of the question, my first thought was: "How do you write an end-user in Haskell?" Commented Jun 17, 2011 at 12:11
  • Yi is an interesting editor written in Haskell. I'd put that as an answer, but I've only looked at the source code and haven't actually used it. Commented Jun 24, 2011 at 17:57

2 Answers 2

8

The two first projects that comes to mind is pandoc and darcs. Great stable tools with users that don't care what programming language is used. They fit the bill perfectly.

Other applications are Yi and Manatee. They are unfortunately a bit unstable at the moment and therefor a bit of a haskell curiosity, but under development. Some day they might be listed among pandoc and darcs.

It should be noted that a lot of software that is written in haskell ends up as libraries and then into proprietary software. Examples of such is the rich flora of web frameworks for haskell. You might visit websites and have no idea that they use a haskell web framework.

4

Hm, what about recent ICFP contest?

enter image description here

The problem was quite challenging and open-ended and I enjoyed it quite a lot. Read the description here: http://www.icfpcontest.org/2011/06/task-description-contest-starts-now.html

Although our team used Ruby and we haven't got to top 30, another team chose Haskell and they have done quite a lot of amaizing stuff: https://github.com/tanakh/ICFP2011

Basically they used the game field as a computer to write a self-replicating and self-healing program which devastated the opponent.

The code is very enjoyable to read although it's rough (due to limited contest time) and very problem-specific. It might be hard to convince others that Haskell is cool and worth learning but for those who already decided do give it a try this will be very inspirational.

Not the answer you're looking for? Browse other questions tagged or ask your own question.