From: "John P. Linderman" <jpl.jpl@gmail.com>
To: Rob Pike <robpike@gmail.com>
Cc: Bakul Shah <bakul@iitbombay.org>, TUHS main list <tuhs@minnie.tuhs.org>
Subject: Re: [TUHS] Regular Expressions
Date: Fri, 31 Jul 2020 20:53:43 -0400 [thread overview]
Message-ID: <CAC0cEp_zZZsZCHO0-a7eYhFvuGQcXXRifB_xhqnmWiHJyCzjNg@mail.gmail.com> (raw)
In-Reply-To: <CAKzdPgygJAwzzEKOMkdo0bqrNUKaO8xzTm0h_nXVgQ9=t7k7kA@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 1879 bytes --]
Hear hear. And I think it should be possible to analyze regular expressions
to determine if "simple" (hence fast) regexps are adequate. "Fancy" re's
are rare. At least from those of us where they couldn't be expressed.
On Fri, Jul 31, 2020 at 8:38 PM Rob Pike <robpike@gmail.com> wrote:
> I think this link - https://swtch.com/~rsc/regexp/regexp1.html i- s the
> best place to start. Superb exposition on the background, theory, and
> implementation as well as a bit of history of how the industry lost its way
> with regular expressions.
>
> Regular expressions are beautiful, simple, and widely misunderstood.
>
> -rob
>
>
> On Sat, Aug 1, 2020 at 10:03 AM Bakul Shah <bakul@iitbombay.org> wrote:
>
>> On Jul 31, 2020, at 3:57 PM, Will Senn <will.senn@gmail.com> wrote:
>> >
>> > I've always been intrigued with regexes. When I was first exposed to
>> them, I was mystified and lost in the greediness of matches. Now, I use
>> them regularly, but still have trouble using them. I think it is because I
>> don't really understand how they work.
>> > ...
>> > 1. What's the provenance of regex in unix (when did it appear, in what
>> form, etc)?
>> > 2. What are the 'best' implementations throughout unix (keep it pre
>> 1980s)?
>> > 3. What are some of the milestones along the way (major changes, forks,
>> disagreements)?
>> > 4. Where, in the source, or in a paper, would you point someone to
>> wanting to better understand the mechanics of regex?
>>
>> Start here: https://en.wikipedia.org/wiki/Thompson%27s_construction
>>
>> [I learned about regular expressions in an automata theory class,
>> before I knew anything about Unix. What helped me was learning
>> about finite state machines. You won't need more than paper and
>> pencil to construct one. Reading source code would make more
>> sense once you grasp how to construct a FSM corresponding to a RE.]
>
>
[-- Attachment #2: Type: text/html, Size: 2897 bytes --]
next prev parent reply other threads:[~2020-08-01 0:54 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-31 22:57 Will Senn
2020-08-01 0:01 ` Bakul Shah
2020-08-01 0:36 ` Rob Pike
2020-08-01 0:53 ` John P. Linderman [this message]
2020-08-01 1:31 ` Bakul Shah
2020-08-01 1:39 ` Larry McVoy
2020-08-01 2:33 ` Will Senn
2020-08-01 2:50 ` Rich Morin
2020-08-01 3:01 ` Larry McVoy
2020-08-01 3:07 ` Will Senn
2020-08-01 4:31 ` Earl Baugh
2020-08-01 4:53 ` ron minnich
2020-08-01 5:48 ` Andrew Hume
2020-08-01 13:31 ` Richard Salz
2020-08-01 13:43 ` Andrew Hume
2020-08-02 0:45 ` Christopher Browne
2020-08-09 1:00 ` Dave Horsfall
2020-08-09 1:15 ` Nelson H. F. Beebe
2020-08-09 23:53 ` Dave Horsfall
2020-08-10 1:38 ` John Cowan
2020-08-01 0:00 Noel Chiappa
2020-08-01 21:12 Doug McIlroy
2020-08-09 23:44 ` Dave Horsfall
2020-08-10 0:50 ` Rob Pike
2020-08-02 4:59 Rudi Blom
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAC0cEp_zZZsZCHO0-a7eYhFvuGQcXXRifB_xhqnmWiHJyCzjNg@mail.gmail.com \
--to=jpl.jpl@gmail.com \
--cc=bakul@iitbombay.org \
--cc=robpike@gmail.com \
--cc=tuhs@minnie.tuhs.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).