caml-list - the Caml user's mailing list
 help / color / mirror / Atom feed
From: Luc Maranget <luc.maranget@inria.fr>
To: Richard Jones <rich@annexia.org>
Cc: Luc Maranget <luc.maranget@inria.fr>, Brian Hurt <bhurt@spnz.org>,
	Ocaml Mailing List <caml-list@inria.fr>
Subject: Re: [Caml-list] ANNOUNCE: mod_caml 1.0.6 - includes security patch
Date: Mon, 19 Jan 2004 15:43:33 +0100	[thread overview]
Message-ID: <20040119154333.A7394@beaune.inria.fr> (raw)
In-Reply-To: <20040119113637.GA30306@redhat.com>; from rich@annexia.org on Mon, Jan 19, 2004 at 11:36:37AM +0000

> On Mon, Jan 19, 2004 at 11:13:53AM +0100, Luc Maranget wrote:
> > I am not exactly sure I understand your needs. But you should probably have a
> > look at ocamllex.
> 
> Coming from a Perl background, ocamllex is a very heavyweight solution
> for the simple problem of doing quick string matches.  The
> Regexp/OCaml package looks very good indeed - shame it can't be part
> of the standard syntax!
> 
> Rich.
> 
> -- 
> Richard Jones. http://www.annexia.org/ http://freshmeat.net/users/rwmj
> Merjis Ltd. http://www.merjis.com/ - improving website return on investment
> PTHRLIB is a library for writing small, efficient and fast servers in C.
> HTTP, CGI, DBI, lightweight threads: http://www.annexia.org/freeware/pthrlib/

Normally, using camlp4 you can insert regexp matchings
in ``standard'' syntax. Although the current manual of
camlp4 does not tell much about that.
Furthermore the code is at the moment broken in the CVS tree...


To me, the extra burden of having to preprocess the lexer
source is not that heavy in a big program, where you have Makefiles
anyway.  Besides some expressivity bonuses (but beware, such
expressivity often comes with fuzziness) one advantage of the library
approach is the possibility to give regexps dynamically (eg by reading external
files).  Few applications  take advantage of this.


Of course all my nice reasoning fails when you consider ``scripting'',
but even then, the idea of putting regexps in strings leads to unncessary
complications (ie many backslashes).
A more convenient way would be by some regexp data type either
abstract or concrete.
Such an API should probably be added to supported ocaml regexp packages.

Cheers,

-- Luc

-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners


  reply	other threads:[~2004-01-19 14:43 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-01-15 14:03 Richard Jones
     [not found] ` <4006AC01.F2AD2741@decis.be>
2004-01-15 15:42   ` Richard Jones
2004-01-15 16:19     ` Markus Mottl
2004-01-15 16:53       ` Richard Jones
2004-01-16  6:15         ` james woodyatt
2004-01-16  9:34           ` Richard Jones
2004-01-16 19:05             ` Brian Hurt
2004-01-16 18:52               ` Yutaka OIWA
2004-01-16 19:20                 ` Markus Mottl
2004-01-16 19:01               ` Markus Mottl
2004-01-19 10:13               ` Luc Maranget
2004-01-19 11:36                 ` Richard Jones
2004-01-19 14:43                   ` Luc Maranget [this message]
2004-01-19 16:10                     ` Richard Jones
2004-01-19 17:46                       ` Markus Mottl
2004-01-19 18:05                         ` Richard Jones
2004-01-19 21:45                           ` Eray Ozkural
2004-01-20 11:31                             ` Markus Mottl
2004-01-20 12:30                               ` Eray Ozkural
2004-01-21 14:01                               ` skaller
2004-01-20 17:34                             ` Michal Moskal
2004-01-20 17:52                               ` Eray Ozkural
2004-01-20 18:54                                 ` Michal Moskal
2004-01-20 19:21                                   ` Markus Mottl
2004-01-20 19:37                                   ` David Brown
2004-01-20 20:38                                     ` Eray Ozkural
2004-01-21 19:07                                     ` Max Kirillov
     [not found]                                       ` <Pine.GSO.4.53.0401211150520.10508@cascade.cs.ubc.ca>
2004-01-22  2:15                                         ` Max Kirillov
2004-01-20 23:00                               ` Brian Hurt
2004-01-20 23:48                                 ` Eray Ozkural
2004-01-21  0:34                                   ` David Brown
2004-01-21  2:32                                     ` Eray Ozkural
2004-01-21  2:34                                     ` Eray Ozkural
2004-01-21  2:34                                       ` Shawn Wagner
2004-01-21  9:43                                     ` Andreas Rossberg
2004-01-21  5:16                                   ` Brian Hurt
2004-01-19 21:59                           ` Kenneth Knowles
2004-01-19 18:18                         ` David Brown
2004-01-19 19:15                           ` Markus Mottl
2004-01-19 19:19                             ` David Brown
     [not found]                       ` <20040119185746.A12690@beaune.inria.fr>
2004-01-19 18:07                         ` Richard Jones
2004-01-20  1:29                 ` skaller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20040119154333.A7394@beaune.inria.fr \
    --to=luc.maranget@inria.fr \
    --cc=bhurt@spnz.org \
    --cc=caml-list@inria.fr \
    --cc=rich@annexia.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).