6

First question, and my apologies if it is off-topic! This question suggests to me I may not be totally off-base.

Where did our present regex notation originate? I am particularly wondering how $ came to mean "end," particularly since its most common use in the English-speaking world (as far as I know) is as a prefix to numbers. I also wonder about . for "any".

* I know came directly from Kleene, and + seems like a logical extension of *, if only because they are closely related in mathematics.

I have been several pages down in a couple different Google Web and Scholar searches. I have also looked here and on SO and softwareengineering.SE, but I can't find an answer. I checked Perl 6's Apocalypse 5, but it doesn't explain how we got our present notation. I seem to recall that Kernighan's Software Tools might have had some information, but I can't put my hands on a copy at the moment. Thank you!

Edit Another data point - TECO dates from 1962, and terminated input strings with Esc, displayed as $ (source). Unfortunately,

the Escape character ... is written as "$" (for historical reasons, of course).

Id. That considerably predates UNIX v3 (1973), but doesn't explain the then-existing "historical reasons."

cxw
  • 161
  • 5

0 Answers0