English version
Accueil     À propos     Téléchargement     Ressources     Contactez-nous    

Ce site est rarement mis à jour. Pour les informations les plus récentes, rendez-vous sur le nouveau site OCaml à l'adresse ocaml.org.

Browse thread
[Caml-list] Generating C stubs
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2002-05-16 (23:22)
From: Christopher Quinn <cq@h...>
Subject: [Caml-list] Re: Camlp4/OCaml
How can camlp4 be unimportant or a waste of time!

Here are some things I find useful about it:

o conditional compilation

o ability to add command line options to switch between one's own 'safe' 
modules and their 'unsafe' versions which can only be done in the case 
of Arrays and Strings with the standard compiler.

o one can always modify one's own copy of the parser,
but that's a bother when something in the original changes, and besides, 
camlp4's extension mechanism allows a compact and manageable format.

o no matter how one redefines the syntax, just running the source 
through camlp4 can reconstruct it in the vanilla form. So no one ever 
needs to suffer another's idea of perfection!

o camlp4 seems to me to be one way to avoid the endless creation of 
mini-languages for specific tasks that end up trying to do stuff beyond 
their limited design. Better to start with the expressivity of the likes 
of caml, maybe cutting down, and augment with p4 extensions. I'm 
planning to embed some sql style DDL for my project.

o I can write code without_the_god_damn_awful_underscore character 
stressing my hands and use-an-alternative-even (though-I-am-no-fan-of-lisp)!

I felt these reasons were compelling enough to justify  switching to 
camlp4 as my default parser.

The above doubtless has no bearing on the technical arguments for not 
having camlp4 in the distribution.
I just want to say I think camlp4 is important and indispensible.

- chris

To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners