
Hello Christophe, Saturday, December 10, 2005, 7:03:57 PM, you wrote: CP> - ada; CP> - erlang; CP> - clisp or scheme; CP> and of course CP> - haskell. CP> Haskell seems very interesting indeed (monadic, STM, a good library). CP> Maybe some of you know some or all of these languages and can explain CP> me some pros/cons about them especially for network programming. what you mean saying "network programming"? Erlang has amazing distributed processing features with fault tolerance (when one processes supervises the others and restart them in case of fault). but Erlang is interpreted language and so it is slow in case of low-level programs. you can use C to make low-level or speed-critical functions Haskell is complied and therefore faster than Erlang. in my experience, it iis about 3-10 times slower than C, depending on what you do (low-level things has much overhead and therefore slower comparing to C, higher-level things has lesser overhead). don't forget that real program will make a lot of I/O and use C libraries, so difference will be less and can be even close to 0. you can use C functions in your Haskell code (this only requires to declare C function in Haskell code). of course, data types are different, so it work good only with functions working on plain types (ints/chars/doubles/pointers/...) and plain structures short resume: Haskell is order of magnitude faster than Erlang, but 3-10 times slower than C. you can use C lower-level routines in Erlang and in Haskell. in Haskell you can also write such routines directly. answer on your question depends on that you want to do besides low-level stuff. Haskell is faster, more robust, and much more extensible than Erlang, while Erlang has cute inter-process communication and distributed processing -- Best regards, Bulat mailto:bulatz@HotPOP.com