Outdated egg!

This is an egg for CHICKEN 3, the unsupported old release. You're almost certainly looking for the CHICKEN 4 version of this egg, if it exists.

If it does not exist, there may be equivalent functionality provided by another egg; have a look at the egg index. Otherwise, please consider porting this egg to the current version of CHICKEN.


  1. Outdated egg!
  2. pmatch
    1. Description
    2. Author
    3. Requirements
    4. Download
    5. Documentation
    6. License


Macroless ML-style pattern matching.


Mayer Goldberg. Packaged as a Chicken extension by Category 5.






In the words of the author:

 This pattern matcher implements ML-style pattern matching in Scheme
 relatively painlessly. I use it whenever I need to name various
 sub-expressions of some sexpr, and refer to them by those names. The
 package is built on the two procedures 'with' and
 'match'. The 'with' procedure has been one of my favourite
 Scheme idioms for quite a while, and you can certainly use it apart [from] any
 pattern matching. The 'match' procedure is a recent addition to the

The only change made to the author's original code is the renaming of the match procedure to pmatch to avoid conflict with Chicken's built-in match.

The following procedures are provided:

[procedure] pmatch
[procedure] map-match
[procedure] ?
[procedure] with
[procedure] match-struct
[procedure] compose-match
[procedure] compose-match-list

Please see the author's documentation for more information.


This code is in the public domain