From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by yquem.inria.fr (Postfix) with ESMTP id D6C18BB83 for ; Wed, 19 Jul 2006 22:23:50 +0200 (CEST) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id k6JKNonj023008 for ; Wed, 19 Jul 2006 22:23:50 +0200 Received: from nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id WAA20579 for ; Wed, 19 Jul 2006 22:23:49 +0200 (MET DST) Received: from fiton.bononia.it (fiton.bononia.it [130.186.88.105]) by nez-perce.inria.fr (8.13.6/8.13.6) with ESMTP id k6JKNl7t014588 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=FAIL) for ; Wed, 19 Jul 2006 22:23:49 +0200 Received: from muletto.takhisis.invalid (fiton.bononia.it [130.186.88.105]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client CN "Stefano Zacchiroli", Issuer "sockmel.bononia.it" (not verified)) by fiton.bononia.it (Postfix) with ESMTP id 5AC0114DFD for ; Wed, 19 Jul 2006 22:23:44 +0200 (CEST) Received: by muletto.takhisis.invalid (Postfix, from userid 1000) id 0413A4AD512; Wed, 19 Jul 2006 22:22:55 +0200 (CEST) Date: Wed, 19 Jul 2006 22:22:55 +0200 From: Stefano Zacchiroli To: list caml-list Subject: Re: On language extensions (was Re: [Caml-list] global record) Message-ID: <20060719202255.GB8894@aquarium.takhisis.invalid> Mail-Followup-To: list caml-list References: <67EBB7A9-9294-4783-BF44-E29651EA6E5F@epfl.ch> <20060719195744.GA27347@furbychan.cocan.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20060719195744.GA27347@furbychan.cocan.org> User-Agent: Mutt/1.5.12-2006-07-14 X-Miltered: at concorde with ID 44BE94D6.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at nez-perce with ID 44BE94D3.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; zacchiroli:01 camlp:01 camlp:01 cmo:01 grammar:01 grammar:01 cheers:01 zacchiroli:01 unibo:01 2006:98 zack:01 zack:01 wrote:01 caml-list:01 dynamically:01 X-Spam-Checker-Version: SpamAssassin 3.0.3 (2005-04-27) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.1 required=5.0 tests=FORGED_RCVD_HELO autolearn=disabled version=3.0.3 On Wed, Jul 19, 2006 at 08:57:44PM +0100, Richard Jones wrote: > I'm probably wrong, but I think the only way to compose two camlp4 > extensions is to combine the source code to both together and compile > a new extension. Is there some other way? Camlp4 extensions are regular .cmo/.cma files which, upon loading, dynamically extends a grammar. You can "compose" multiple extensions by passing all of them to your preferred camlp4 pre-processor. Merely loading multiple extensions of course does not grant you obtain a grammar able to parse anything at all ... Cheers. -- Stefano Zacchiroli -*- Computer Science PhD student @ Uny Bologna, Italy zack@{cs.unibo.it,debian.org,bononia.it} -%- http://www.bononia.it/zack/ If there's any real truth it's that the entire multidimensional infinity of the Universe is almost certainly being run by a bunch of maniacs. -!-