On Thu, Aug 10, 2000 at 10:16:12AM +0200, Johan Vromans wrote:
> >   "(" (.) group(1, [[ 'a' .. 'z' ]] (*) [3,5] ) (.) ")"
> > 
> > here (.) is the ASCII substitution for the UNICODE "REx concatenate"
> > char, similarly for [[. ]] and (*).  (The chars may be borrowed from
> > the math repertoire.)
> 
> Hmm. Looks nice. How about pattern functions, e.g.,
> 
>   sub match_all : pattern {
>     "(" . group(1, [ 'a' .. 'z' ] * [3,5] ) . ")"
>   }

These are just user-defined ops.  You should be able to overwrite the
normal ops, as in:

  sub match_all {
    use re_ops 'overload_usual_ops';
    "(" . group(1, [ 'a' .. 'z' ] * [3,5] ) . ")"
  }

Will this go?

Ilya

P.S.

> Variable interpolation can be handled using Damian's curried expressions.

On XRay:

Summary for query "curried;Damian":

   found 0 matches in 0 files.

Reply via email to