From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail4-relais-sop.national.inria.fr (mail4-relais-sop.national.inria.fr [192.134.164.105]) by walapai.inria.fr (8.13.6/8.13.6) with ESMTP id pA39GpBc028075 for ; Thu, 3 Nov 2011 10:16:51 +0100 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: Ak0FAH5bsk7VuiYS/2dsb2JhbABEqFiBH4EFgXIBAQUMJgFGEAsYHBIUGDGIFwa1AIg9YQSlfA X-IronPort-AV: E=Sophos;i="4.69,448,1315173600"; d="scan'208";a="116526506" Received: from solaria.dimino.org ([213.186.38.18]) by mail4-smtp-sop.national.inria.fr with ESMTP/TLS/ADH-AES256-SHA; 03 Nov 2011 10:16:46 +0100 Received: by solaria.dimino.org (Postfix, from userid 1000) id 1B8E880088; Thu, 3 Nov 2011 10:16:46 +0100 (CET) Date: Thu, 3 Nov 2011 10:16:46 +0100 From: =?iso-8859-1?Q?J=E9r=E9mie?= Dimino To: Jun Furuse Cc: caml-list Message-ID: <20111103091646.GA24501@solaria.dimino.org> Mail-Followup-To: Jun Furuse , caml-list References: MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: User-Agent: Mutt/1.5.20 (2009-06-14) Subject: Re: [Caml-list] Is it possible to extend OCaml lexer rules via Camlp4? Hi, On Thu, Nov 03, 2011 at 04:12:29PM +0900, Jun Furuse wrote: > I want to have pcre regexp literals in the same syntax as Perl i.e. > /hello\sworld\\n/. Currently what we do in OCaml is Pcre.regexp > "hello\\sworld\\\\n", where the backslash char must be escaped in a > OCaml string literal. This is lousy for scripting in OCaml. Have you look at camlp4 quotations ? Basically you can define a new quotation named "foo" and in you code you can write: <:foo<...>> The ... can be any string, except that it cannot contains >>. Also you may be interested in the Mikmatch syntax extension: http://martin.jambon.free.fr/micmatch.html Cheers, -- Jérémie