Paul Mackinney wrote: > Heh, me too! (Although likely on a more modest scale) I've just finished > a Programming Languages course where we used Haskell to write a lambda > calculus evaluator. Writing the input expressions as structures (Lambda > "x" (Var "y")) was so irritating that I wrote a parser to field string > input ("/x.y"). It works nicely, although only the interpreter's > built-in limits keep it from blowing up on expressions that expand > infinitely.
Haskell is nice for what it is, but I wouldn't really call it a practical language, simply because, last time I checked, performance wasn't very good, and it didn't have much in the way of libraries. But it is very elegant syntactically. Erlang (http://www.erlang.org) is, I think, a better choice for real work. It is also a functional language, but with built-in concurrency using asynchronous messages to pass data between processes which may live on the same machine or on other machines reachable via a network. Ericsson has used it in a number of significant projects, including a high-performnance ATM router the model number of which I no longer recall. > Not sure about licensing, but it's small, free, and available for *nix, > MacOS, and Wintel. http://haskell.org Erlang is not only free software, but it's already packaged for Debian (though I think it's been orphaned; it's in stable, but no longer in testing or unstable). Craig
msg18818/pgp00000.pgp
Description: PGP signature