[#41278] [BUG:1.9] BINARY should not be ASCII-compatible — Yugui <yugui@...>

Yuguiです。

15 messages 2010/05/11

[#41407] [Bug #3339] win32ole test failure — Usaku NAKAMURA <redmine@...>

Bug #3339: win32ole test failure

20 messages 2010/05/25
[#41411] Re: [Bug #3339] win32ole test failure — Masaki Suketa <masaki.suketa@...> 2010/05/25

助田です。

[#41412] Re: [Bug #3339] win32ole test failure — "U.Nakamura" <usa@...> 2010/05/25

こんにちは、なかむら(う)です。

[ruby-dev:41282] Re: [BUG:1.9] BINARY should not be ASCII-compatible

From: Urabe Shyouhei <shyouhei@...>
Date: 2010-05-11 13:46:47 UTC
List: ruby-dev #41282
普段、あまりM17Nの件に反応しない卜部ですが、

(2010/05/11 20:44), Yugui wrote:
> wycatsと話しまして、railsサイドでのM17N実例からの知見というものを聞き取りました。
> それによれば、誤ってBINARYなまま(バイト列のまま)低レベルレイヤーから上がってきた文字列を、文字列リテラル由来の(script
> encodingな)文字列と結合した際の互換性エラーが問題で、多数のバグ報告に遭遇しているそうです。

ゴールを確認しましょう。どうせM17Nの問題が魔法のように解決するのはありえませ
ん。Yuguiさんとしてはどうなるのが目標ですか?

* wycatsが黙る
* 低レベルライブラリ作者が黙る
* ユーザーが黙る

おそらくこの三者は排他です。だれに問題を押し付けるかですから。

(snip)
> wycatsから聞いたRails界での実例からは、ドライバのバグに由来する理不尽な例外にアプリケーション開発者が困惑している状況を認識しました。そして、wycatsによれば「この理不尽に見舞われる限りユーザーは1.9に移行しないだろう」と。

ユーザーはじゃなくてwycatsは、でしょう。声の大きい人に惑わされてはいけません。

仮にBINARYをASCII incompatibleにすると、既存の拡張ライブラリが生成するありとあ
らゆる文字列がscript encodingと連結不可能になるわけです。これを修正して回るには
相当なマンパワーが必要ですね。拡張ライブラリ作者のなかには「この理不尽に見舞わ
れる限り俺は1.9に移行しない!」って言い出す人、出てくると思いますよ。

んでそのどっちが移行しなくても結局ユーザーから見たら使えないです。

> 何か積極的にBINARYをASCII-compatibleにしておくべき理由がない限り、私はこれをRuby
> 1.9がまともに使える言語であるための障害と認識し、バグと認定します。
> ご意見を伺いたく思います。

偉い人の仕事には「どっしりと構えて些細なことでは動じない」というのもあると思っ
てます。ASCII compatibilityに関して言えば、俺の理解では誰もがハッピーになる魔法
は存在しないです。どういった落とし所に落ち着いたところで、結局不幸な人は出てく
ると思います。今更振る舞いを変更するコストと不幸の総和は、このままで行く不幸と
どっちが大きいでしょうね?最終的に決めるのは私ではないですが、もし私が決めるとし
たら、現状維持で行くと思います。

In This Thread