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 nez-perce.inria.fr (nez-perce.inria.fr [192.93.2.78]) by yquem.inria.fr (Postfix) with ESMTP id 192CCBB9C for ; Tue, 3 Jan 2006 15:31:23 +0100 (CET) Received: from pauillac.inria.fr (pauillac.inria.fr [128.93.11.35]) by nez-perce.inria.fr (8.13.0/8.13.0) with ESMTP id k03EVM2b032423 for ; Tue, 3 Jan 2006 15:31:22 +0100 Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id PAA08819 for ; Tue, 3 Jan 2006 15:31:22 +0100 (MET) Received: from mail1.telekom.de (mail1.telekom.de [62.225.183.202]) by concorde.inria.fr (8.13.0/8.13.0) with ESMTP id k03EVLGc026903 for ; Tue, 3 Jan 2006 15:31:21 +0100 Received: from g9jbq.mgb01.telekom.de by G8SBV.dmz.telekom.de with ESMTP for caml-list@inria.fr; Tue, 3 Jan 2006 15:31:22 +0100 Received: by G9JBQ.mgb01.telekom.de with Internet Mail Service (5.5.2653.19) id ; Tue, 3 Jan 2006 15:31:13 +0100 Message-Id: <97A461F3EE5284469E41ED3728202F41121F18@S4DE9JSAAMW.ost.t-com.de> From: "Beck01, Wolfgang" To: caml-list@inria.fr Subject: camlp4o and lazy: pr_o: not impl: expr; tag = 19 Date: Tue, 3 Jan 2006 15:31:05 +0100 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2653.19) Content-Type: text/plain X-Miltered: at nez-perce with ID 43BA8ABA.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Miltered: at concorde with ID 43BA8AB9.000 by Joe's j-chkmail (http://j-chkmail.ensmp.fr)! X-Spam: no; 0.00; t-systems:01 camlp:01 lazy:01 impl:01 expr:01 camlp:01 grammar:01 pcaml:01 expr:01 lazy:01 cmo:01 ocamlc:01 -pp:01 cmo:01 mlast: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.0 required=5.0 tests=none autolearn=disabled version=3.0.3 During the holidays I tried to get finally a clue about camlp4. When I have a small grammar like this: open Pcaml EXTEND expr: [ [ "bla" -> let fe = <:expr< tst() >> in let lzy = <;expr< lazy $fe$ >> in <:expr< do_something $lzy$ >> ] ] ; END and compile it to g3.cmo with ocamlc -pp "camlp4o pa_extend.cmo q_MLast.cmo" -I +camlp4 -c g3.ml and pass a file containing a bla through camlp4o ./g3.cmo pr_o.cmo bla.ml I get let _ = do_something There seems to be an issue with <:expr< lazy ... When I replace 'lazy' with 'lazi' everything works as expected: let _ = do_someting (lazi (tst ())) Any idea what's wrong here? Wolfgang -- T-Systems International GmbH Technologiezentrum Next Generation IP Services and Systems +49 6151 9372863 Am Kavalleriesand 3 64295 Darmstadt