|
From: Pennell, D. <DPe...@qu...> - 2003-11-20 13:07:05
|
Vassili,
Thanks for the upadate. I'm going to follow your recommendation and start
with option 4. By the time I get done with that your December meeting
should have transpired.
If the new version of Regex does end up as a Cincom product, will it still
be available for porting to other platforms?
-david
> -----Original Message-----
> From: Vassili Bykov [mailto:va...@pa...]
> Sent: Thursday, November 20, 2003 2:47 AM
> To: Pennell, David
> Subject: RE: regex and Smee
>
> Hello David,
>
> > > Here are the differences I noticed:
> > > >
> > > > QuantifierPrefix ::
> > > > *
> > > > +
> > > > ?
> > > > { DecimalDigits }
> > > > { DecimalDigits , }
> > > > { DecimalDigits , DecimalDigits }
> > > >
> > > > The {...} construct is not supported by Regex (this is probably
> > > > the worst problem with it).
> > >
> > > I'm not following you here. What do you mean by "the (...)
> > > construct"?
>
> It's the "{...} construct" (curly braces). Something like
> "a{3,5}" is supposed to match between 3 and 5 occurrences of
> a, and Regex does not understand that.
>
> > I remember you mentioning a new version when we talked at StS.
> > What is the new version about?
> > What is the status?
> > Are you interested in adding ECMAScript support or
> providing > a mechansim that would allow me to?
>
> The new version is a nearly complete rewrite of the whole
> thing. It does everything Python regular expressions do, so I
> expect it is a superset of what is required for ECMAScript.
> The status is the dreaded "90% complete".
> I have the basic matcher working and functionally complete
> (and 170+ tests to prove it). However, the optimizations I
> wanted to get done to improve matching speed are not
> done--and one of the reasons I rewrote so much of it was to
> allow those optimizations. I haven't worked on it for a
> while, and not sure when I would be able to get back to it. I
> need either a happy coincidence of being in the mood to write
> some code when there is a long holiday, or Regex being made
> an official product. On our planning meeting next month we
> are going to consider that, so if it happens I might get some
> time to work on it "officially". This is pretty much all I
> can say at the moment.
>
> > It looks like I have the following choices:
> > > 1 roll my own ECMAScript compatible regex engine
> > > 2 try to map ECMAScript semantics to Regex11 semantics (I
> don't even
> > > know if this is doable)
> > > 3 wait for the new version of your code (assuming that it
> will be or
> > > can be made to be ECMAScript compliant)
> > > 4 cut a first release with the current Regex code, document the
> > > differences and then go to 1,2 or 3.
> > >
> > > What do you recommend?
>
> I wish I could suggest (3), but before the meeting in
> December I don't want to give empty promises. How about (4)
> to begin with, and we'll choose between 1, 2 and 3 once the
> "official" Regex status is clear?
>
> > A couple of other questions:
> > > - Doesn't your ":characterMethod:" syntax conflict?
>
> Yes, it does. In the new version I keep this option (and even
> extend it to allow inlined Smalltalk blocks), but it is
> accessible using the syntax used for syntax extensions in
> Python regex (":isDigit:" becomes "(?#isDigit)"), so there is
> no problem with that.
>
> > > - Do you support 16bit characters?
>
> Good question. I never checked. I don't think I do any
> dispatch on character codes anywhere, or anything like that,
> so I expect that they either work, or would work after a bit
> of tweaking.
>
> > Do you mind if I copy this thread to the Smee list - that way
> > > it gets archived.
>
> By all means!
>
> Cheers,
>
> --Vassili
>
>
> > >
>
> --
> Vassili Bykov [|] <va...@pa...> VisualWorks
> Engineering, Tools Project
>
|