Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p>It depends what you want to do with your server. As might be expected from a telecoms application, <strong>Erlang excels at doing simple tasks with very high concurrency</strong>. If your server will need a bazillion connections per second, or at once, Erlang is your friend. Erlang also offers better support for distributing load over multiple servers.</p> <p><strong>Haskell excels at complex, symbolic computation</strong> and as of April 2009 can also handle a great many threads (see update below). Moreover, Haskell has <strong>more tools for getting complicated code right</strong>: things like <a href="http://www.cs.chalmers.se/~rjmh/QuickCheck/" rel="nofollow noreferrer">QuickCheck</a>, <a href="http://www.cs.york.ac.uk/fp/smallcheck/" rel="nofollow noreferrer">SmallCheck</a>, and the static type system. So if your server is doing complicated, interesting things and you can get by with just one server, you're probably better off with Haskell.</p> <hr> <p><strong>Update 13 April 2009</strong>: Don Stewart, a reliable source, reports that "the last thread-scaling bug in the Glasgow Haskell Compiler was squished a few months ago", and that some users report using a million Haskell threads without trouble. As of January 2009, there is a <a href="http://research.microsoft.com/en-us/um/people/simonpj/papers/parallel/" rel="nofollow noreferrer">new, unpublished paper from the implementors</a> which may describe how this is achieved.</p> <hr> <p><strong>Update 21 February 2012</strong>: John Hughes's company, <a href="http://quviq.com" rel="nofollow noreferrer">QuviQ</a>, now makes QuickCheck for Erlang. They have found a number of very interesting bugs. You can download "QuickCheck Mini" for free; it is comparable to the Haskell QuickCheck. There is also a more powerful commercial version.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    3. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload