Browse thread
camlp4
[
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: | 2010-02-06 (12:44) |
From: | Guillaume Yziquel <guillaume.yziquel@c...> |
Subject: | Re: [Caml-list] camlp4 |
Tiphaine Turpin a écrit : > Andy Ray a écrit : >> What should one do? >> > Complaining on the list about lack of camlp4 documentation is a good > start :-). To help you decide (and increase the pressure on the Ocaml > team), I would like to mention some of the difficulties that I > encountered when trying to understand camlp4 as a user: I fully agree. I've been working on understanding Camlp4 recently to handle one of Mauricio Fernandez' library on relational algebras. You can, eventually, if you take time, get to understan how everything works out. But that involves a lot of trial and error, and I still believe I do not have the full picture in mind. I'd just keep two things in mind concerning camlp4: -1- It's not hugely different from Camlp5. It is different, but not hugely, at least from the newcommer's point of view. So my advice is simply to work on an existing camlp4 extension, and to try groking with existing camlp5 documentation, while doing trials and errors the whole way long. It is painful, but it's doable. -2- A good hands-on introduction, to be read in conjunction with up-to-date camlp4 code: http://martin.jambon.free.fr/extend-ocaml-syntax.html Now, if someone, or a group of people, has the courage to update Martin's page to the current camlp4, that would be hugely helpful: I'm pretty sure there's quite a lot of people willing to use camlp4 that are simply laid back by the lack of documentation. Concerning the functorial design of the source code of camlp4, I fully agree with Tiphaine. It is probably a good design choice, and when you get to study it closely, it is quite remarkably done. However, a *huge* pain to read and to navigate through. All the best, -- Guillaume Yziquel http://yziquel.homelinux.org/