scsh-users
[Top] [All Lists]

Regexp notation

To: shivers@ai.mit.edu
Subject: Regexp notation
From: Jim Blandy <jimb@cyclic.com>
Date: Thu, 9 Jan 1997 16:59:46 -0500
Cc: scsh@martigny.ai.mit.edu
It still seems to me that LET* crosses an important border.
Everything else in the notation is simply concerned with operations on
sets of strings, which seems right.  But LET* is concerned with the
form of your descriptions.  If your notation is meant to address that
area too, I would really like to have a way to define parameterized
regexps:

;; A list of words, and a list of numbers, separated by a semi:
(let* ((separated-list
         ;; A non-empty, comma-separated list of something:
         (lambda (pat) (& pat (* "," pat))))
       (word (+ (in (- "azAZ"))))
       (number (+ (in (- "09")))))
  (& (separated-list word) ";" (separated-list number)))

The above is all regexp notation, mind you.  There's no Scheme in it.

I guess what I can't come up with is some motivating example for LET*
that is not also a motivating example for a much larger, clean, and
powerful system for working with regexps.  In short, why stop there?

<Prev in Thread] Current Thread [Next in Thread>