In article <
48F90C3D.80609@...>,
Urabe Shyouhei <
shyouhei@...> writes:
> 気づいたんですけど、それだと
>
> % ruby1.9 -e 'Marshal.dump(/\u0001/, STDOUT)' | \
> ruby1.8 -e 'Marshal.dump(Marshal.load(STDIN), STDOUT)' | \
> ruby1.9 -e 'p Marshal.load(STDIN)'
>
> とかがroud-tripしなくなると思う(いまはする)んですけど、平気なんですかね。
syntax と semantics のどちらを保存するかというと、semantics
のほうがいいんじゃないですかね。
今は以下のように、マッチするものが変化するわけで、それが変化
しないようになるほうがまだマシなんじゃないでしょうか。
% ruby-1.8 -e 'print Marshal.dump(/\u0001/)' > z
% ruby-1.8 -e 'r = Marshal.load(STDIN); p ["\x01", "u0001"].map {|s| r =~ s }' < z
[nil, 0]
% ruby-1.9 -e 'r = Marshal.load(STDIN); p ["\x01", "u0001"].map {|s| r =~ s }' < z
[0, nil]
--
[田中 哲][たなか あきら][Tanaka Akira]