Browse thread
Re: OCaml is broken
[
Home
]
[ Index:
by date
|
by threads
]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: | 2009-12-20 (03:29) |
From: | Jon Harrop <jon@f...> |
Subject: | Re: [Caml-list] Re: OCaml is broken |
On Saturday 19 December 2009 19:38:41 Jeff Shaw wrote: > My understanding is that since jocaml uses the regular ocaml runtime, it > is also not multicore enabled. > > Haskell is a functional language that has good performance GHC and the Haskell language itself have serious performance problems. > that can use multiple processors, but the learning curve is steeper and > higher. And Haskell lacks many of the features OCaml programmers take for granted. > OCaml is a close relative of Standard ML, so there might be some > implementation of SML that you like. MLTon might allow multicore use, > but I'm not sure how mature it is. SML/NJ has a library or language > extension called Concurrent ML, but I think SML/NJ might not use > multiple processors. MLton and SML/NJ are both multicore incapable. The PolyML implementation of SML is multicore friendly but last time I looked (many years ago) it was 100x slower than OCaml for floating point. As long as you're looking at OCaml's close relatives with multicore support, F# is your only viable option. Soon, HLVM will provide a cross-platform open source solution. If you look further you will also find Scala and Clojure. > Note that if you're not using a lot of threads, you can use Unix.fork to > do true multithreaded programming ocaml. We've discussed the problems with that before. Writing a parallel generic quicksort seems to be a good test of a decent multicore capable language implementation. Currently, F# is a *long* way ahead of everything open source. -- Dr Jon Harrop, Flying Frog Consultancy Ltd. http://www.ffconsultancy.com/?e