From mboxrd@z Thu Jan 1 00:00:00 1970
Return-Path:
X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr
X-Spam-Level: **
X-Spam-Status: No, score=2.1 required=5.0 tests=AWL,DNS_FROM_RFC_POST,
SPF_NEUTRAL autolearn=disabled version=3.1.3
Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105])
by yquem.inria.fr (Postfix) with ESMTP id 6E32FBB84
for ; Wed, 7 Jan 2009 23:50:46 +0100 (CET)
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: As8BAOHAZEnRVdoUlGdsb2JhbACTTz4BAQEBCQkKCQ+vFoEBi10BAwEDhXI
X-IronPort-AV: E=Sophos;i="4.37,228,1231110000";
d="scan'208";a="33427343"
Received: from mail-bw0-f20.google.com ([209.85.218.20])
by mail4-smtp-sop.national.inria.fr with ESMTP; 07 Jan 2009 23:50:46 +0100
Received: by bwz13 with SMTP id 13so23843349bwz.3
for ; Wed, 07 Jan 2009 14:50:45 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
d=gmail.com; s=gamma;
h=domainkey-signature:received:received:message-id:date:from:to
:subject:in-reply-to:mime-version:content-type
:content-transfer-encoding:content-disposition:references;
bh=ccCnCAOKbZJbg4GxEMEIgEck+ifmDgqV1sUmmvNYw2g=;
b=D5RPAscqfaQV2CTPa7SVMsO4tx69ElEP+FbZ2gM3eUFVA3sT+XDW50CXvvJ09e/gJp
IyZ1xpbNwPJ4saXngRW4gdQwv+PKx4LNPFFadudsBQC/abqgYLsqtt7MeriRjsjiwErf
SSX3kDVWCY2lNpbJNa1LxW0BS7wk8Re2StMe8=
DomainKey-Signature: a=rsa-sha1; c=nofws;
d=gmail.com; s=gamma;
h=message-id:date:from:to:subject:in-reply-to:mime-version
:content-type:content-transfer-encoding:content-disposition
:references;
b=mkHqMpu0+PgevY+Fy1lcWOY/ZTeYehZkDympbyQRe5P5o/wm7kH0B0GP25ezZjSfu8
NnatvgXbR7pTSmwN/UP5uSuujJrAruZrzb1e3jdRtOoa4+mJFhUPmbt+okh1TKJTE9tJ
TcArfjZ/Qmjssk71WoOjoFt4zJVcpfMhWMtSM=
Received: by 10.223.106.12 with SMTP id v12mr16991086fao.16.1231368645529;
Wed, 07 Jan 2009 14:50:45 -0800 (PST)
Received: by 10.223.113.73 with HTTP; Wed, 7 Jan 2009 14:50:45 -0800 (PST)
Message-ID: <4b5157c30901071450m7ab87d93yeb446dfee086b5f4@mail.gmail.com>
Date: Wed, 7 Jan 2009 23:50:45 +0100
From: "Paolo Donadeo"
To: "OCaml mailing list"
Subject: Re: [Caml-list] Parsing simple type expressions
In-Reply-To: <524796.35746.qm@web27006.mail.ukl.yahoo.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit
Content-Disposition: inline
References: <4b5157c30901060603k6d0589d2m469b170dc5ec7c8e@mail.gmail.com>
<007001c97011$33012dc0$99038940$@com> <4963C8AD.8010206@ens-lyon.org>
<524796.35746.qm@web27006.mail.ukl.yahoo.com>
X-Spam: no; 0.00; matthieu:01 camlp:01 camlp:01 syntax:01 ocaml:01 wiki:01 parsing:01 caml-list:01 expressions:04 problem:05 extension:06 programmer:07 example:10 suspected:10 libraries:11
Thanks, Matthieu and Jake, this is exactly what I had in mind.
At the end, Camlp4 was the right solution to my simple problem, as I
suspected from the beginning. Camlp4 is an extremely powerful tool and
it's a pity it couldn't be used by everyone for lack of documentation.
What is really needed, in my opinion, is a description of *what* one
can do with Camlp4 without being an expert. For example a list of all
syntax extension available out of the box might spread the use of
Camlp4 among common programmers.
Searching in the source code I can see things named:
Camlp4ExceptionTracer, Camlp4FoldGenerator, Camlp4MetaGenerator, and
so on. The names sounds great but... what is it? The source code is
cryptic to every "regular" OCaml programmer like me. The same
considerations apply to all the (many!) libraries available and
related to Camlp4.
What is needed to spread the use of this tool are some... recipes,
like those available for ocamlbuild in its wiki pages.
--
Paolo
~
~
:wq