- 952 名前:デフォルトの名無しさん mailto:sage [2019/07/22(月) 01:27:11.95 ID:dN38X5eV.net]
- >>922
おおサンクス。 ただ、それって 2007/05/25 より後だから、別件だね。 無駄に喧嘩してるなあ。 内容はkkos氏の方が正しい。 鬼車は最速を目指したライブラリなのだから、無駄なことは出来る限り省かなければならない。 そもそもスクリプト言語で不完全な文字列って、バイト列を直接与えるとかしないと出来ないはずだし、 その場合にはRuby側でチェックしておけ、というのはその通りで、極めて妥当な要求だ。 Rubyなんてmutable stringなのだから最初に必ずコピーが必要で、普通はその時にやればいいだけ。 その方が今時の型安全にも合うし。 それを「実は僕も問題だと思ってたんだよね」みたいな受け方をするからそりゃ不信感が募る。 これは完全にMatzが糞で、実はC流のグダグダコードを書いていて、 どこで何をするべきか分かってないのだと思う。 そしてRuby界隈ではMatzは変に神格化されてて裸の王様化してる、ってとこだろう。 878の動作結果を見ても、誰も問題だとは指摘出来ないようだし。 これはkkos氏が言っているとおりがそのままで、普通は、というか本当は、 1. Rubyは rb_enc_mbclen(p,end,enc) で記述していたが、 2. 鬼車が rb_enc_mbclen(p,enc) で記述されていることに気づき、 3. 何で end が無いのか確認して、 4. Ruby側にチェックをつける という流れになる。 1が無いのに、「し、知ってたし」みたいなことを言うから「嘘つくな」になる。 つってもこういうちょっとズルいというか卑怯というか、絶対俺のバグは認めないマンは残念ながら普通にいるから、 いちいち問いただしても始まらない。ただ、多分、kkos氏が切れたのはその後、 > それはそれとして、鬼車を呼ぶ前に「一文字を完成していない不完全なバイト列は含まない」ことをチェックするのはかなりコストが高いのですが、 これだとは思う。鬼車側でチェックしたらコストが安い訳でもないのに、これはない。 これはコイツとは一緒にはやれない、という結論を出すには十分だ。 本来Aでやるべき事をBでやる、みたいなことをすると、コードが一気に劣化していく。 長いこと保守するつもりなら絶対に飲めない。実際、鬼車は今も保守されているし、kkos氏の判断は妥当だ。
|

|