[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Incompatibility with pattern matching

This page is part of the web mail archives of SRFI 76 from before July 7th, 2015. The new archives for SRFI 76 contain all messages, not just those from before July 7th, 2015.



Andre van Tonder <andre@xxxxxxxxxxxxxxxxx> writes:

> It seems that the constructor paradigm chosen in the draft does not
> easily accommodate future extensions for pattern matching.  The
> problem is that a constructor can be many to one.  E.g., in
>
>    (define-type foo (x y)
>      (fields a immutable (+ x y)))
>
> we cannot automatically generate a pattern that can be used (like in MzScheme):
>
>    (match (make-foo 1 2)
>     ((make-foo x y) .....))

Automatic generation of such patterns could be limited to records with
particular properties, e.g. when all parameters are used to initialize
some fields.

In other cases you would define the semantics of pattern matching
yourself if desirable.

-- 
   __("<         Marcin Kowalczyk
   \__/       qrczak@xxxxxxxxxx
    ^^     http://qrnik.knm.org.pl/~qrczak/