9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: Russ Cox <rsc@swtch.com>
To: Fans of the OS Plan 9 from Bell Labs <9fans@9fans.net>
Subject: Re: [9fans] command repetition in sam/acme
Date: Wed,  4 Mar 2009 09:03:09 -0800	[thread overview]
Message-ID: <dd6fe68a0903040903h35f45a91m77dc19d2d0062d3f@mail.gmail.com> (raw)
In-Reply-To: <a560a5d00903040141v525e48afg66feab3e1f0d0d63@mail.gmail.com>

> Is it really so? R. Cox (Regular Expression Matching Can Be Simple And
> Fast), I think, shows, that repetition can be first expanded and then
> used even by the nice (non-backtracking) algorithms, like this:
>
> e{3} --> eee
> e{3,5} --> eeee?e?
> e{3,} --> eee+
>
> where would the problem arise?

The problem arises mainly not in this construct
but in the tremendous number of other
constructs that regexp libraries with counted
repetition usually throw in along with it.

That said, even counted repetition is not free.
Even if sam/acme had counted repetition,
it would not handle x{1000} particularly well,
since the expansion you give above would
end up being a very long regular expression
for non-trivial x.

R. Cox


      parent reply	other threads:[~2009-03-04 17:03 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-03-03 12:07 Rudolf Sykora
2009-03-03 12:49 ` Steve Simon
2009-03-03 13:53   ` Rudolf Sykora
2009-03-03 15:40     ` roger peppe
2009-03-03 15:58       ` yy
2009-03-03 16:25         ` Rudolf Sykora
2009-03-03 15:58       ` Uriel
2009-03-03 15:59         ` Uriel
2009-03-03 14:15 ` John Stalker
2009-03-03 14:23   ` Rudolf Sykora
2009-03-03 16:09 ` Russ Cox
2009-03-03 16:31   ` roger peppe
2009-03-03 17:16     ` Uriel
2009-03-03 18:50       ` Rudolf Sykora
2009-03-03 16:39   ` Rudolf Sykora
2009-03-03 20:30   ` Arvindh Rajesh Tamilmani
2009-03-03 22:13     ` ron minnich
2009-03-03 23:19       ` J.R. Mauro
2009-03-03 23:37       ` Anthony Sorace
2009-03-04  0:31         ` Rob Pike
2009-03-04  0:44           ` J.R. Mauro
2009-03-04  0:56             ` Rob Pike
2009-03-04  1:51               ` J.R. Mauro
2009-03-04  2:15                 ` Rob Pike
2009-03-04  4:59                   ` J.R. Mauro
2009-03-04  9:41           ` Rudolf Sykora
2009-03-04  9:52             ` Rob Pike
2009-03-04 11:32               ` Rudolf Sykora
2009-03-04 13:31                 ` Uriel
2009-03-04 13:41                   ` Rudolf Sykora
2009-03-04 16:35                   ` John Stalker
2009-03-04 16:56                     ` ron minnich
2009-03-04 13:37             ` erik quanstrom
2009-03-04 14:14               ` Rudolf Sykora
2009-03-04 14:37                 ` erik quanstrom
2009-03-04 14:59                   ` Rudolf Sykora
2009-03-04 16:34                 ` Steve Simon
2009-03-04 17:03             ` Russ Cox [this message]

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=dd6fe68a0903040903h35f45a91m77dc19d2d0062d3f@mail.gmail.com \
    --to=rsc@swtch.com \
    --cc=9fans@9fans.net \
    /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).