Gnus development mailing list
 help / color / mirror / Atom feed
From: Elias Oltmanns <oltmanns@uni-bonn.de>
Cc: ding@gnus.org
Subject: Re: Slow operations on buffers of tens of megabytes
Date: Mon, 20 Nov 2006 19:22:08 +0100	[thread overview]
Message-ID: <87odr2vuzz.fsf@denkblock.local> (raw)
In-Reply-To: <E1Gm8kG-0003Qx-Ao@fencepost.gnu.org>

Richard Stallman <rms@gnu.org> wrote:
>     Without really knowing anything
>     about emacs 23, I'm just curious to know if something like a generic
>     mechanism to restrict pattern matching for heavily used functions like
>     re-search-forward to some limitted case tables, e.g., the ASCII table,
>     will be provided (if applicable, that is) by emacs.
>
> Why would we why we want such a feature?  It is not needed to deal
> with this problem, or any other problem I can recall.

The original problem was that search-forward couldn't use boyer_moore
when gnus scanned the nnfolder for article-nubers. This was due to the
fact that i was related to its dotless version, i.e. a character from
a row further down (or up?) the unicode table. In src/search.c it
says:

--8<---------------cut here---------------start------------->8---
   This kind of search works if all the characters in BASE_PAT that
   have nontrivial translation are the same aside from the last byte.
   This makes it possible to translate just the last byte of a
   character, and do so after just a simple test of the context.
--8<---------------cut here---------------end--------------->8---

As I said, I don't really know anything about emacs 23, nor do I know
very much about unicode for that matter. I just thought that there
might be more such links between characters of different rows in
future case and translation tables. From the point of view of gnus and
similar packages it might be desirable to temporarily use some
restricted translation table (restricted to only characters of one row
in the terms of the quote above) for internal purposes.

>
> Of course, you can always install your own case table.

Maybe, I'm just a bit confused and this will turn out to be the only
feasible solution in the end.

Regards,

Elias

  reply	other threads:[~2006-11-20 18:22 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-11-05  5:37 Alexandre Oliva
2006-11-06  5:02 ` Richard Stallman
2006-11-06  6:02   ` Katsumi Yamaoka
2006-11-06  9:21     ` Reiner Steib
2006-11-06 20:00       ` Alexandre Oliva
2006-11-07 14:13         ` Reiner Steib
2006-11-08 14:43           ` Reiner Steib
2006-11-09 22:00             ` Alexandre Oliva
2006-11-10 18:42               ` Richard Stallman
2006-11-11  0:37                 ` Reiner Steib
2006-11-13 16:40                   ` Kevin Rodgers
2006-11-14 12:26                     ` Richard Stallman
2006-11-13 17:28               ` Reiner Steib
2006-11-19  9:49                 ` Elias Oltmanns
2006-11-20 12:59                   ` Richard Stallman
2006-11-20 18:22                     ` Elias Oltmanns [this message]
2006-11-21  7:47                       ` Richard Stallman
2006-11-21  8:18                         ` Kenichi Handa
2006-11-22 13:15                           ` Richard Stallman
2006-11-12  5:14       ` Richard Stallman

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=87odr2vuzz.fsf@denkblock.local \
    --to=oltmanns@uni-bonn.de \
    --cc=ding@gnus.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).