トップ «前の日記(2002-03-10) 最新 次の日記(2002-03-12)» 月表示 編集

日々の流転


2002-03-11 [長年日記]

λ. あぁぁぁぁ。時間を無駄にしすぎ。

λ. 正規表現

気晴らしにRubyで正規表現(?)のエンジンを書いてみた。どうせなので文字列じゃなくてEnumerableを対象にすることにする。

NFAからDFAへの変換時に、馬鹿正直に巾集合オートマトンを作ってるせいか、かなり遅いなぁ。ただ、Prolog版よりRuby版の方が速かったのには驚いた。あとは、bisimilarな状態が複数出来てしまう事があるのがヤな感じ。bisimulationで割った商集合を状態集合とするオートマトンを作れば良いんだけど、具体的にはどうやるんだっけなぁ? 確かcoalgebraで変数を…… まあ気が向いたら実装してみるか。

Tags: ruby
a = Object.new
re = SRegexp.new(SRegexp.concat(SRegexp.star(SRegexp.concat(0, 1)), a))
re.accept? [0,1,0,1,a] #=> true

λ. ERE

先日、第一回の試験が行われたERE(経済学検定試験)というのがあるそうだ。

λ. Re: druby vs リモートでの例外

その例だとURIがDRb.primary_serverと一致して、リモート呼び出しでなくなってしまうと思います。再現例としてはこんな感じかと。

Tags: ruby
require 'drb'
DRb.start_service(nil, nil)
DRbObject.new(nil, DRb::DRbServer.new(nil,
  lambda{raise RuntimeError.new.extend(DRbUndumped)}).uri).call
#=>
# drb/drb.rb:239:in `raise': exception class/object expected (TypeError)
#         from drb/drb.rb:239:in `method_missing'
#         from hoge.rb:3
本日のツッコミ(全2件) [ツッコミを入れる]
ψ kjana (2002-03-12 19:29)

おお,考えはしてたけどめんどうくさくてやらなかった奴だ :-)<br>M17N までのつなぎに何か真面目に作る時いるかななんて.いかん<br>せん本気でやる気がないから要素も作る気にならなかったり :-P

ψ さかい (2002-03-13 03:52)

200行くらいで、案外簡単に実装できましたよ。<br>効率を考えないでこういうのを書いてみるのも楽しいものですね。