Re: [Haskell-cafe] Tutorial on Haskell

Friends
I have agreed to give a 3-hr tutorial on Haskell at the Open Source Convention 2007 http://conferences.oreillynet.com/os2007/
I'm quite excited about this: it is a great opportunity to expose Haskell to a bunch of smart folk, many of whom won't know much about Haskell. My guess is that they'll be Linux/Perl/Ruby types, and they'll be practitioners rather than pointy-headed academics.
One possibility is to do a tutorial along the lines of "here's how to reverse a list", "here's what a type is" etc; you know the kind of
Well, given that concurrency is a hot topic at the moment, how about something based on STM? E.g. perhaps some kind of instant messaging server? Or "Twitter" except scalable. By ruthlessly eliminating features, you could get the core of one of these down to something that could be built in three hours. But please, no Santa Clauses ;-) Neil thing. But instead, I'd prefer to show them programs that they might consider *useful* rather than cute, and introduce the language along the way, as it were.
So this message is to ask you for your advice. Many of you are exactly
the kind of folk that come to OSCON --- except that you know Haskell. So help me out:
Suggest concrete examples of programs that are * small * useful * demonstrate Haskell's power * preferably something that might be a bit tricky in another language
For example, a possible unifying theme would be this: http://haskell.org/haskellwiki/Simple_unix_tools
Another might be Don's cpu-scaling example http://cgi.cse.unsw.edu.au/~dons/blog/2007/03/10
But there must be lots of others. For example, there are lots in the
blog entries that Don collects for the Haskell Weekly Newsletter. But I'd like to use you as a filter: tell me your favourites, the examples you find compelling. (It doesn't have to be *your* program... a URL to a great blog entry is just fine.) Of course I'll give credit to the author.
Remember, the goal is _not_ "explain monads". It's "Haskell is a great
way to Get The Job Done".
Thanks!
Simon _______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe

Neil Bartlett wrote:
E.g. perhaps some kind of instant messaging server? Or "Twitter" except scalable.
A twitter-alike will quite probably get people's attention. And of course anything that breaks the "it's good for compilers!" stereotype is to be commended :-) Also on the subject of scaling, Ralf Lammel's paper on looking at MapReduce through a strongly typed functional lens has been quite a hit. A tutorial along the lines of dealing safely with lots of data, in a cluster of systems, would likely go down well.
participants (2)
-
Bryan O'Sullivan
-
Neil Bartlett