[Haskell-cafe] Haskell versus F#, OCaml, et. al. ...

John Goerzen jgoerzen at complete.org
Tue Sep 30 10:25:38 EDT 2008


Galchin, Vasili wrote:
> Hello,
> 
>        Frank mode on ... ;^) In terms of functionality, where is Haskell
> superior vs inferior to ML, Caml, OCaml, F#, Erlang, etc.? E.g. in terms
> of library functionality?

I used OCaml for a little while before I moved to Haskell.

In some ways, such as the type system, is is somewhat similar.

I had a number of gripes about OCaml, though.

* Terrible I/O system.  Different type for read handles than for write
handles.  No capability to open a file Read/Write in standard library.
Could do so with the unix module, but it had yet another incompatible
type and didn't work with standard functions.

* Two list-like types.  Standard list was strict, the other list
("streams") was lazy.  Two sets of library functions for this.  (But
have we cloned this with ByteStreams?  Hmm.)

* The whole build system.  Huge PITA.

There were about half a dozen different attempts at making this work.
Some based on make, some on autoconf, some on other things.  OCaml can
be compiled to bytecode or native code, the latter not supported on all
platforms.  Executables can only be built using libraries built the same
way (bytecode vs. native code).  Nothing similar to Cabal over there.

I don't know if any of the above have strengthened in the last couple of
years.

-- John


More information about the Haskell-Cafe mailing list