From: Stefan Monnier <monnier@iro.umontreal.ca>
To: help-gnu-emacs@gnu.org
Subject: Re: `looking-back' strange warning
Date: Sat, 03 Oct 2015 14:11:08 -0400 [thread overview]
Message-ID: <jwvbncfesq7.fsf-monnier+gmane.emacs.help@gnu.org> (raw)
In-Reply-To: jwv1tddkr0s.fsf-monnier+gmane.emacs.help@gnu.org
>> It could be made faster
> Oh yes.
BTW, one easyish way to make a "fast looking-back" would be the
following:
- take GNU ELPA's "lex" package.
- add function that reverses a lex regexp (these are rx.el style sexps,
so such a reversal should be very easy to do).
- copy "lex-match-buffer" into a new "lex-match-buffer-backward"
reversing the operations to go backward (we're talking about 30 lines
of code only).
- put it all together "lex-parse-re -> mylex-reverse ->
lex-compile -> lex-match-buffer-backward".
The result should be reasonably fast, assuming all the steps until
lex-compile can be done at compile-time (in my tests lex-match-buffer
was reasonably competitive with the regexp.c engine, even tho it's
written in Elisp).
Of course it won't be 100% compatible with looking-back. E.g. lex.el
doesn't support backreferences and you can't extract the submatches.
Stefan
next prev parent reply other threads:[~2015-10-03 18:11 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-30 8:25 `looking-back' strange warning Andreas Röhler
2015-10-01 6:20 ` Michael Heerdegen
2015-10-01 6:25 ` Tassilo Horn
2015-10-01 6:50 ` Dmitry Gutov
2015-10-01 7:49 ` Andreas Röhler
2015-10-01 8:20 ` Tassilo Horn
2015-10-01 8:46 ` Andreas Röhler
2015-10-01 9:29 ` Tassilo Horn
2015-10-02 0:10 ` Stefan Monnier
2015-10-02 15:21 ` Tassilo Horn
2015-10-01 16:00 ` Drew Adams
2015-10-01 17:56 ` Dmitry Gutov
2015-10-01 18:24 ` Andreas Röhler
2015-10-01 18:59 ` Dmitry Gutov
2015-10-01 19:55 ` Andreas Röhler
2015-10-01 20:26 ` Dmitry Gutov
2015-10-02 0:15 ` Stefan Monnier
2015-10-02 1:18 ` Michael Heerdegen
2015-10-02 5:13 ` Drew Adams
2015-10-02 20:28 ` Drew Adams
2015-10-02 20:59 ` Tassilo Horn
2015-10-02 21:35 ` Drew Adams
2015-10-03 6:26 ` Tassilo Horn
2015-10-03 6:45 ` Andreas Röhler
2015-10-03 15:20 ` Drew Adams
2015-10-03 15:17 ` Drew Adams
2015-10-02 1:19 ` Michael Heerdegen
2015-10-02 5:12 ` Drew Adams
2015-10-02 6:16 ` Andreas Röhler
2015-10-02 6:36 ` Michael Heerdegen
2015-10-02 12:46 ` Stefan Monnier
2015-10-02 15:02 ` Drew Adams
2015-10-02 19:08 ` Tom Tromey
2015-10-02 19:33 ` Stefan Monnier
2015-10-03 18:11 ` Stefan Monnier [this message]
[not found] ` <mailman.176.1443721449.16064.help-gnu-emacs@gnu.org>
2015-10-01 18:50 ` Barry Margolin
[not found] ` <<barmar-D40496.14502501102015@88-209-239-213.giganet.hu>
2015-10-01 23:42 ` Drew Adams
2015-10-02 0:12 ` Stefan Monnier
2015-10-02 5:10 ` Drew Adams
2015-10-02 12:48 ` Stefan Monnier
2015-10-02 15:03 ` Drew Adams
2015-10-02 15:21 ` Stefan Monnier
2015-10-02 15:24 ` Drew Adams
2015-10-02 19:28 ` Stefan Monnier
2015-10-01 12:35 ` Artur Malabarba
[not found] <<560B9C7F.2060301@easy-emacs.de>
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=jwvbncfesq7.fsf-monnier+gmane.emacs.help@gnu.org \
--to=monnier@iro.umontreal.ca \
--cc=help-gnu-emacs@gnu.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 read-only IMAP folder(s) and NNTP newsgroup(s).