Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
Google summer of Code proposal
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2009-03-21 (22:15)
From: Jon Harrop <jon@f...>
Subject: Re: [Caml-list] Google summer of Code proposal
On Saturday 21 March 2009 20:43:01 Joel Reymont wrote:
> On Mar 21, 2009, at 1:38 PM, Jon Harrop wrote:
> > . You will succumb to ocamlopt's current run-time representation
> > which is
> > objectively inefficient (e.g. boxing floats, tuples, records) and
> > was only
> > chosen because the compiler lacks capabilities that LLVM already
> > provides for
> > you (primarily JIT compilation).
> This is probably a stupid suggestion but why not have OCaml directly
> generate machine code, without the use of assembler and linker?
> Wouldn't this be easier than trying to couple OCaml with LLVM?

Had OCaml not already been coupled with LLVM, yes. However, there are quite 
decent OCaml bindings to LLVM already available (in the LLVM tree).

> Separately, it's sort of funny that LLVM and its users are going
> through all the trouble now, when Lisp and Forth have had runtime
> compilation for years and years.

Yes and no. LLVM supports many features that Lisp does not (e.g. type checking 
at compile time, tail calls) and its implementation and the resulting 
performance are far better than any of the open source Lisp implementations.

Lisp was one of the foundations I ruled out for implementing new MLs for these 

Dr Jon Harrop, Flying Frog Consultancy Ltd.