作者: Bruce.
日時: 2004/11/08(22:09)
Bruce. です。

<DLEPIGNELFJNMOEMIPBCAEELCKAA.masa@...>

> 植田です。
> 
> だいぶ前に話題になっていたPCREですが,
> comp.lang.pythonの先月10月30日のスレッド
> Regex speedで最近取り上げられています。

みました。でも2.4でpcreもなくなるみたいですね。
ま、Unicode対応してないししようがないかも。

ところでスレッド中 Reinhold Birkenfeld が

So my question is: Why is the re module implemented in pure Python?
Isn't it possible to integrate it into the core or rewrite it in C?

と発言し、Andrew Dalke が

It isn't.  It's written in C.  I've not done timing tests
between Perl and Python's engines for a long time, so I can't
provide feedback on that aspect.

といってるわけなんですが、実際のところどうなんでしょう? ちょっと見た限りでは
前者のようですが、Modulesディレクトリに_sre.cなんてものもあったりします。
ことコンパイルに関してはPythonで書こうがCで書こうが大差ないと思いますが、
実行のほうはどうでしょうね。注意深くデータ構造を選択すればPure Pythonでも
結構いい速度出せると思うのですが。

話は外れますが sre.py に

# sre extensions (experimental, don't rely on these)
T = TEMPLATE = sre_compile.SRE_FLAG_TEMPLATE # disable backtracking

というのがあるんですが、これ、なんなんでしょう?

-- 
木村浩一
  I thought what I'd do was, I'd pretend I was one of those deaf-mutes.
  mail kbk@...
  web  www.kt.rim.or.jp/~kbk/