Version française
Home     About     Download     Resources     Contact us    

This site is updated infrequently. For up-to-date information, please visit the new OCaml website at

Browse thread
ANN: patterns v0.4
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: 2008-06-20 (17:00)
From: Martin Jambon <martin.jambon@e...>
Subject: Re: [Caml-list] ANN: patterns v0.4
On Fri, 20 Jun 2008, Richard Jones wrote:

> On Tue, Jun 17, 2008 at 10:58:35PM +0100, Jeremy Yallop wrote:
>> Nathaniel Gray wrote:
>>> On Tue, Jun 17, 2008 at 4:20 AM, Jeremy Yallop <>
>>> wrote:
>>>> I'm pleased to announce a new release of `patterns', an OCaml
>>>> framework for writing extensions to pattern matching using Camlp4.
>>> Ooh, very interesting!  Have you looked at "active patterns" in F#?
>>> They look really useful and I've been wanting to code them up in
>>> camlp4 for a while now but haven't had the time.  It sounds like your
>>> framework could make that much easier.
>> Yes, one of the reason for writing the framework was to be able to
>> implement F#-like active patterns.  I think it should be reasonably
>> straightforward to do -- in fact, I'd expect design considerations to
>> take up more time than actual implementation work (although I say that
>> from the perspective of being already familiar with the "patterns"
>> framework, of course).  If I remember rightly, there's a note at the end
>> of the ICFP07 active patterns paper about using polymorphic variants to
>> add active patterns in OCaml, which seems like it might be a good
>> starting point.
> Can someone summarise active patterns for us?  The MSDN site
> containing the paper is down at the moment.
>> You might also be interested in the "views" feature of Martin Jambon's
>> "Micmatch", which is along the same lines as active patterns:
> Is anyone working on upgrading micmatch to 3.10?

I am, but I don't spend as much time on my personal projects than I used 
to, so it goes slowly.

The dev page is at
There's a subversion repository. Although the code is currently unusable
you can see if there's some progress: