free web hosting | free hosting | Business Hosting Services | Free Website Submission | shopping cart | php hosting



First there is an overview of ML, from which OCaml descended, of which section 4 is "Why You Want to Start Using SML Today".

There're lots of clear comparisons with Java and C/C++ here, along with an explanation of the differences between modules and objects, and functional vs imperative paradigms. Everything that is said here about ML/SML applies to OCaml.


"Scalable Computer Languages", while kind of long, goes in to even more detail regarding functional programming and OCaml.


One Day Compilers: How I learned to stop worrying and love static metaprogramming
Then there's the Great Computer Language Shootout, which compared the performance of over thirty languages. The editorial has some mention of OCaml.

If you want to see how the languages actually performed, click on the "Scorecard" link near the top.


Then, of course, are OCaml's successes at the International Functional Programming contests:

ICFP'03 (Lighning Division winner)
ICFP'02 (1st prize)
ICFP'01 (3rd prize)
ICFP'00 (1st prize) (2nd prize)
ICFP'99 (1st prize)
ICFP'98 (2nd prize)


An interesting comparison of OCaml to Ruby


And here is a thread concerning objects vs modules

You can follow it by clicking on the links in the left frame.


In the message linked to below Xavier Leroy, the inventor of OCaml, shows a handy little table explaining some differences in terminology between OCaml, C++ and Java:

              C++              Java                OCaml

        non-virtual methods  static methods      functions
        virtual methods      methods              methods
        pure virtual methods  abstract methods    virtual methods
He also speaks about the differences between OCaml's OO implementation and those of these other languages.


Some other miscellaneous OCaml comparisons and explanations and threads:

Case for ML
Functional Programming in OCaml/SML
Why OCaml
Why Functional Programming Matters - oldie but goodie
Comparisons to C++
Comparisons to Java
Business considerations