Penguin

Differences between current version and predecessor to the previous major change of Ocaml.

Other diffs: Previous Revision, Previous Author, or view the Annotated Edit History

Newer page: version 9 Last edited on Tuesday, November 9, 2004 12:45:38 am by AristotlePagaltzis
Older page: version 8 Last edited on Wednesday, September 15, 2004 6:57:43 am by RichardJones Revert
@@ -1,35 +1 @@
-Objective Caml, or OCaml, is a programming language, easy to learn, easy to use, and yet amazingly powerful. It is a dialect of [ML ]. Objective Caml features a powerful modules system, full support to object-oriented paradigm, and an optimizing compiler.  
-  
-More info here: http://caml.inria.fr/ %%%  
-And here: http://www.ocaml.org  
-  
-Software in OCaml: http://www.npc.de/ocaml/linkdb/  
-  
-The O'Reily book on OCaml: [Developing Applications With Objective Caml | http://caml.inria.fr/oreilly-book/] (this is very good)  
-  
-[An OCaml tutorial | http://www.merjis.com/developers/ocaml_tutorial]  
-  
-!! The Ocaml Implementation  
-  
-There is a single OpenSource implementation of [Ocaml] developed by INRIA (the main French research institute for computer science). A large community of users who don't want their code broken pressure the Ocaml development team to keep new versions standard or backwards compatible. [Python] and [Perl] are developed the same way. This approach works well once the community user is large enough. Ocaml's user community has been the necessary size for many years.  
-  
-(An interpreter for the older [Caml Light | http://caml.inria.fr/overview-caml-light-eng.html] language is still available because it can be made to work on small computers, e.g. 286 PCs. It is an subset of Objective Caml, so there is little other reason to use it.)  
-  
-!! OOP  
-  
-One of OCaml's extentions to the original ML language is ObjectOrientation. OCaml's [OOP] has everything you'd expect after using [Java] or [C++]. The syntax is quite different -- class declarations are much more compact.  
-  
-A big improvement is that container classes are [polymorphic | PolymorphicTypes]. In C++ and Java container objects only recognise objects inside themselves as being members of the __Object__ class. You have to cast objects back the appropriate class when you remove them from the container. In Ocaml, if you want a container object to specifically contain objects that are of the class __fruitbat__, you can say so.  
-  
-See [Objects in Caml | http://pauillac.inria.fr/ocaml/htmlman/manual005.html]  
-  
-!! The OCaml Library  
-  
-OCaml's library is divided into: a [core library |http://caml.inria.fr/ocaml/htmlman/manual033.html], types and function available at all times; an implementation independent [standard library | http://caml.inria.fr/ocaml/htmlman/manual034.html], modules that can be imported; and set of [optional libraries | http://caml.inria.fr/ocaml/htmlman/index.html#p:library] that are either implementation dependent or special purpose.  
-  
-The "str" regular expression library that comes with Ocaml is rather clumsy. I recommend the [PCRE | http://www.ai.univie.ac.at/~markus/home/ocaml_sources.html] library instead.  
-  
-__OCaml Third-Party Libraries:__ [The Caml Link Database | http://www.npc.de/ocaml/linkdb/] and [The Hump | http://caml.inria.fr/humps/index.html] are the central repositories for [Ocaml] software .  
-  
------  
-CategoryProgrammingLanguages  
+Describe [Ocaml ] here.