2010-03-11-01-正規表現と ReplacedDA と - project-enigma

2010-03-11-01-正規表現と ReplacedDA と

>> Site top >> weblog >> 月別アーカイブ >> 2010年03月のlog >> 2010-03-11-01-正規表現と ReplacedDA と

最終更新日付:2013/12/31 07:36:03


正規表現と ReplacedDA

2010 年 03 月 11 日

先日、西麻布で飲んでいたとき、ReplacedDA の話が出た。お懐しい。eimon 氏による ReplaceDA が Palm OS 5 で動かないという話を受け、Replace'd'DA としてリメイクしたものだった。この1文字違っているという事実は、使って下さる人達でも知らないことが多い。洒落のつもりだったのだが、まぁそれはそれとして。

このとき、画面上の N W R というのは何? と聞かれたのだった。これは、プレインテキスト検索、ワイルドカード検索、正規表現検索を選択するためのオプションボタンだ。そして、未だに正規表現検索機能は搭載されていない。

正規表現検索が搭載されていないのは、需要が事実上皆無だという認識があるからだ。実際、これまで ReplacedDA で保留になっている正規表現検索機能をなんとかせよとせっつくような連絡は来たためしがない。

しかし、陰郎がなんとかして ReplacedDA に搭載したいと思っていた正規表現検索エンジンは、自分で自作し、かれこれ5年以上もイジり回していたものだ。愛着もあるし、なんとかしたかった。なんとかしたかったというのは、Palm OS 上で動かすためには性能的に ARM コードで動かす必要があったからだ。だからできなかった。それはどういうことか。

Palm OS 上で ARM コードで動かそうとすると、ARMlet という仕組みを使用する必要がある。そして、ARMlet では大域が使用できない。つまり、グローバル変数とかだ。そして、陰郎のエンジンは C++ で書かれており、仮想関数や例外処理を使用している。この仮想関数や例外処理といった C++ の言語機能は、コンパイラが内部的に大域を使用することで実現されている。だから、陰郎のエンジンはそのままでは ARMlet として動かすことができないのだ。

この問題を解決するために、仮想関数や例外処理を使用しないエンジンとして完全に新しく作り直すことも考えた。しかし、これはかなりの時間と気力を要する。そして、ReplacedDA に正規表現検索機能を搭載することにはほとんど需要がない。これが、これまでこの問題を放置していた理由だ。

この問題をどうするか、未だに結論は出ていない。これからも出ないかもしれない。しかし、ReplacedDA は別として、この正規表現エンジンをなんとか「完成」と言える状態にまでもって行きたいという思いはある。それは自分の「やりたいコト」だが、「やるべきコト」はほぼ常に別にある。そういうものだ。

 

コメント

このページにコメントする

 

このページのタグ

Page tag : Palm

Page tag : 正規表現

 

 


Copyright(C) 2005-2017 project-enigma.
Generated by CL-PREFAB.