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.0 required=5.0 tests=DNS_FROM_SECURITYSAGE autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by yquem.inria.fr (Postfix) with ESMTP id A35A9BB84 for ; Wed, 12 Nov 2008 15:30:23 +0100 (CET) X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AokCAHN3GklA6ba/imdsb2JhbACMVAGHHD4BAQEKCQwHDwW6U4NX X-IronPort-AV: E=Sophos;i="4.33,590,1220220000"; d="scan'208";a="17131328" Received: from concorde.inria.fr ([192.93.2.39]) by mail2-smtp-roc.national.inria.fr with ESMTP; 12 Nov 2008 15:30:23 +0100 Received: from mail2-relais-roc.national.inria.fr (mail2-relais-roc.national.inria.fr [192.134.164.83]) by concorde.inria.fr (8.13.6/8.13.6) with ESMTP id mACEUNn5010108 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=OK) for ; Wed, 12 Nov 2008 15:30:23 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AokCAHN3GklA6ba/imdsb2JhbACMVAGHHD4BAQEKCQwHDwW6U4NX X-IronPort-AV: E=Sophos;i="4.33,590,1220220000"; d="scan'208";a="17131325" Received: from nf-out-0910.google.com ([64.233.182.191]) by mail2-smtp-roc.national.inria.fr with ESMTP; 12 Nov 2008 15:30:23 +0100 Received: by nf-out-0910.google.com with SMTP id d3so261275nfc.7 for ; Wed, 12 Nov 2008 06:30:23 -0800 (PST) Received: by 10.86.59.2 with SMTP id h2mr9151830fga.30.1226500222755; Wed, 12 Nov 2008 06:30:22 -0800 (PST) Received: by 10.86.25.3 with HTTP; Wed, 12 Nov 2008 06:30:22 -0800 (PST) Message-ID: <7d8707de0811120630u402fd449t4906834298b3a6dd@mail.gmail.com> Date: Wed, 12 Nov 2008 15:30:22 +0100 From: "Andrej Bauer" To: caml-list@inria.fr Subject: Parametrizing ocamlyacc MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Content-Disposition: inline X-Miltered: at concorde with ID 491AE87F.000 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.00; andrej:01 andrej:01 ocamlyacc:01 ocamlyacc:01 functor:01 modules:02 executable:03 logical:04 implement:06 seem:08 refers:08 bauer:09 bauer:09 accepts:09 file:11 I have the following situation: - a signature S - two modules A and B, which both implement S - an ocamlyacc file which refers to an implementation of S I want to generate two executable, one where A is used and another where B is used. The most logical thing would be to turn the ocamlyacc part into a functor which accepts an implementation of S. But there does not seem to be any way of doing this. What can I do? Can menhir do this? Best regards, Andrej