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
Metaprogramming features
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2008-10-04 (09:10)
From: David Teller <David.Teller@u...>
Subject: Re: [Caml-list] Metaprogramming features
On Sat, 2008-10-04 at 03:17 +0100, Jon Harrop wrote:
> If you want a race, forget Haskell and look at F# which already provides typed 
> metaprogramming with quotations, unsafe high-performance metaprogramming via 
> CIL and the two most valuable syntax extensions (try..finally and views) as 
> well as most of the key benefits of OCaml plus decent libraries and a 
> concurrent run-time.

Well, I'm not going to answer on the concurrency aspect, it's been amply
discussed in various other threads.

As for the decent libraries, that's our first objective with Batteries
Included and Community OCaml. Valuable  syntax extensions (including
boilerplate) is our secondary objective. We handle that part so that the
rest of the community can concentrate on the rest of the race :)

> IMHO, the most productive direction for OCaml right now is towards LLVM. An 
> LLVM backend to OCaml would facilitate some productive improvements (e.g. 
> free polymorphism, easy run-time code generation and dynamic linking, easy 
> FFI, platform independent and performant intermediate representation, extra 
> optimization passes for "free"). Moreover, this path can lead to completely 
> independent compilers that could then be free to expose their lexers, 
> parsers, type checkers and metaprogramming capabilities without licensing 
> issues.

I quite agree that a move towards LLVM would be an interesting
experiment.  Whether or not it proves useful remains to be seen. I'm
planning to put a few graduate students on writing a Caml bytecode =>
LLVM compiler later this year and if things go nicely on a whole OCaml
=> LLVM compiler next year. I believe that a Summer of Code on the
subject would be quite profitable (although I can't personally handle it
next year).


David Teller-Rajchenbach
 Security of Distributed Systems
 Angry researcher: French Universities need reforms, but the LRU act brings liquidations.