Application letters at the Haskell workshop: suggestion
Thu, 13 Sep 2001 13:52:04 -0700
Thanks, that's very valuable information. It's hard to appreciate the
relative utility (as you can see :-)) of different experimental features.
It's also confusing that things like exceptions, concurrency, and FFI are
labeled 'experimental'. They're so (IMHO) crucial that I find myself saying,
"Okay, if exceptions are 'experimental', what other really important things
might I be missing by not being familiar with all the experimental
extensions?" Thanks for clearing that up somewhat.
On a tenuously related note, I should mention that so many Haskell examples
focus on things which fit easily into a functional mold (factorial, etc.)
that I did not actually have the faintest idea how to create a real and
useful Haskell program until I saw the code for Simon Marlow's web server.
The snippets on Doug Bagley's Computer Language Shootout were also helpful.
It's also very difficult to find examples which demonstrate the use of
experimental features. I mention this only because your report below of what
features you use daily provides a useful point of reference for people
wondering what actually goes into a non-trivial Haskell application.
> I consider myself a fairly hardcore Haskell user (I used to be a
> language designer and compiler/library developer but now I work on
> another language and write my tools in Haskell and perl). Despite
> this, I don't think I use any of the features you list (I guess I'm
> suggesting that these might not be the most important to you either).
> I do use the IO monad, IORefs (sparingly), constructor classes, lots
> of libraries, the foreign function interface (lets you call C and
> C++), parser generators (happy) and parser combinators, exception
> handling and concurrency (even just the lame non-preemptive version
> that Hugs provides).
> Of course, this partly reflects the kinds of programs I write and, to
> some extent, my being comfortable with the features and libraries I
> know and not having time to really explore what I can do with the
> other features.
> Alastair Reid email@example.com http://www.cs.utah.edu/~reid/