[#37248] [Feature:1.9] Enumerator#inspect — "Yusuke ENDOH" <mame@...>

遠藤です。

12 messages 2008/12/02

[#37337] [Feature #841] Object#self — "rubikitch ." <redmine@...>

Feature #841: Object#self

13 messages 2008/12/09

[#37513] Current status of 1.9.1 RC1's issues — "Yugui (Yuki Sonoda)" <yugui@...>

Hi, folks

14 messages 2008/12/20
[#37516] Re: Current status of 1.9.1 RC1's issues — Masatoshi SEKI <m_seki@...> 2008/12/20

咳といいます。

[#37576] [BUG:trunk] encoding for stdio's — "Yugui (Yuki Sonoda)" <yugui@...>

Yuguiです。

11 messages 2008/12/24

[ruby-dev:37312] Re: [BUG:trunk] Encoding in which Array#pack returns when a string-related format and a byte seq format are mixed

From: Yukihiro Matsumoto <matz@...>
Date: 2008-12-08 08:48:11 UTC
List: ruby-dev #37312
まつもと ゆきひろです

In message "Re: [ruby-dev:37294] [BUG:trunk] Encoding in which Array#pack returns when a string-related format and a byte seq format are mixed"
    on Sun, 7 Dec 2008 11:54:23 +0900, "Yugui (Yuki Sonoda)" <yugui@yugui.jp> writes:

|今のところは
|* s!が生成するのはエンコーディングを持たない
|  => 結合相手がいればそれに従う
|  => いなければASCII-8BIT
|という判断のように見えます。
|
|しかしながら、AaMmUuxなどを除けばpackが生成するのは文字列というよりはバ
|イト列です。特にプラットフォーム依存なpack formatについてはその色彩が濃
|厚です。これらは積極的にASCII-8BITに傾けるべきではないでしょうか。

一理あります。

ただ、「エンコーディング的に壊れた」文字列を許容するRubyとし
ては、エンコーディング情報を保存したいという気持ちもあって上
記のようになっています。

以下はとりとめのない考え。

  文字列 + バイナリ + 文字列

という関係があった時、

  * 全体をASCII-8BITにしてしまうとエンコーディング文字列の情
    報は失われる

  * エンコーディングを保存すると、結果がエンコーディング的に
    壊れた文字列になる

  * 保存する場合、複数文字列のエンコーディングが矛盾していた
    場合、エラーにはできないので、ASCII-8BITにするしかなく結
    局情報が失われることは避けられない

ということになるので、ここでできるだけ保存するかできるだけ
ASCII-8BITに傾けるかは、やや難しい判断ではないかと思います。

                                まつもと ゆきひろ /:|)

In This Thread