Symbol and string

open-uri e$B$Ge(B :proxy=>nil
e$B$H$$$&;XDj$r9T$&$H!"0J2<$N$h$&$K%(%i!<$K$J$j$^$9!#e(B

% ./ruby -v -ropen-uri -e ‘open(“http://cvs.m17n.org”, :proxy=>nil)’
ruby 1.9.0 (2006-09-05) [i686-linux]
/home/akr/ruby/19/lib/ruby/1.9/net/http.rb:1139:in
initialize_http_header': undefined method strip’ for nil:NilClass
(NoMethodError)
from /home/akr/ruby/19/lib/ruby/1.9/net/http.rb:1137:in
Hash#each' from /home/akr/ruby/19/lib/ruby/1.9/net/http.rb:1137:in initialize_http_header’
from /home/akr/ruby/19/lib/ruby/1.9/net/http.rb:1469:in
initialize' from /home/akr/ruby/19/lib/ruby/1.9/net/http.rb:1585:in initialize’
from /home/akr/ruby/19/lib/ruby/1.9/open-uri.rb:301:in
Class#new' from /home/akr/ruby/19/lib/ruby/1.9/open-uri.rb:301:in OpenURI#open_http’
from /home/akr/ruby/19/lib/ruby/1.9/net/http.rb:543:in
Net::HTTP#start' from /home/akr/ruby/19/lib/ruby/1.9/open-uri.rb:290:in OpenURI#open_http’
from /home/akr/ruby/19/lib/ruby/1.9/open-uri.rb:709:in
URI::HTTP#buffer_open' from /home/akr/ruby/19/lib/ruby/1.9/open-uri.rb:192:in open_loop’
from /home/akr/ruby/19/lib/ruby/1.9/open-uri.rb:190:in catch' from /home/akr/ruby/19/lib/ruby/1.9/open-uri.rb:190:in open_loop’
from /home/akr/ruby/19/lib/ruby/1.9/open-uri.rb:136:in
OpenURI#open_uri' from /home/akr/ruby/19/lib/ruby/1.9/open-uri.rb:611:in OpenURI::OpenRead#open’
from /home/akr/ruby/19/lib/ruby/1.9/open-uri.rb:30:in `open’
from -e:1

e$B$3$l$Oe(B Symbol e$B$,e(B String
e$B$N%5%V%/%i%9$K$J$C$?$N$,860x$G$9!#e(B

open-uri e$B$G$O%O%C%7%e$rEO$7$?;~$K!"e(BString e$B$,%-!<$N$b$N$O%X%Ce(B
e$B%@$N;XDj$H$_$J$7!"e(BSymbol e$B$,%-!<$N$b$N$OF0:n$r@)8f$9$k;XDj$He(B
e$B$7$F07$C$F$$$^$9!#e(B

e$B$D$^$j!“e(BString e$B$He(B Symbol
e$B$O0c$&$b$N$@$H$$$&A[Dj$K$?$C$F$$$ke(B
e$B$o$1$G$9$,!”$=$l$,Jx$l$?$N$GLdBj$K$J$C$F$$$^$9!#e(B

e$B:#2s$Ne(B Symbol e$B$N07$$$NJQ99$K:]$7!"$3$N$h$&$JLdBj$O$I$&07$&$3e(B
e$B$H$,A[Dj$5$l$F$$$^$9$+e(B?

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:29491] symbol and string”
on Tue, 5 Sep 2006 16:24:19 +0900, Tanaka A. [email protected]
writes:

|open-uri e$B$Ge(B :proxy=>nil e$B$H$$$&;XDj$r9T$&$H!"0J2<$N$h$&$K%(%i!<$K$J$j$^$9!#e(B

|e$B$3$l$Oe(B Symbol e$B$,e(B String e$B$N%5%V%/%i%9$K$J$C$?$N$,860x$G$9!#e(B

|e$B:#2s$Ne(B Symbol e$B$N07$$$NJQ99$K:]$7!"$3$N$h$&$JLdBj$O$I$&07$&$3e(B
|e$B$H$,A[Dj$5$l$F$$$^$9$+e(B?

Structe$B$GF1MM$NLdBj$,5/$-$?;~e(B(e$BBh0l0z?t$,J8;zNs$G$"$l$Pe(BStruct
e$BL>!“e(BSymbole$B$G$”$l$P%a%s%PL>$H$7$F$$$?e(B)e$B$K$O!“e(BSymbole$B$G$”$k$+$Ie(B
e$B$&$+$r@h$KH=Dj$9$k$H$$$&J}K!$G2sHr$7$^$7$?!#e(B

e$B31$H$$$$$^$9!#e(B

On 2006/09/06, at 0:36, Tanaka A. wrote:

e$B;DG0$J$,$i!"$=$NJ}K!$G$Oe(B

open(url, :proxy=>…, “proxy”=>…)

e$B$H$$$&$h$&$K!"e(B:proxy e$B$N@)8f$HF1;~$Ke(B proxy e$B$H$$$&%X%C%@$r;XDje(B
e$B$9$k$3$H$,$G$-$^$;$s!#$3$l$O!"e(Bopen-uri e$B$N%3!<%I$Ke(B 2e$B$D$NMWAGe(B
e$B$,$?$I$jCe$+$J$$$?$a$G$9!#e(B

e$B$J$s$+$&$^$$J}K!$O$J$$$G$9$+$Me(B?

e$B$$$^e(B1.9e$B$,:n$l$J$/$F;n$;$J$$$N$G$9$,!"e(BStringe$B$N%-!<$He(BSymbole$B$N%-!<$,e(B
e$BF10l;k$5$l$A$c$&$C$F$3$H$J$s$G$9$+e(B?

1.8e$B$@$H$3$&$J$s$G$9$,e(B

irb(main):001:0> h = Hash.new
irb(main):002:0> h[‘a’] = ‘a’
irb(main):003:0> h[:a] = :a
irb(main):004:0> h
=> {“a”=>“a”, :a=>:a}

1.9e$B$@$H$?$H$($P<!$N$h$&$K$J$k$N$G$7$g$&$+e(B?
=> {“a”=>:a}

Stringe$B$He(BSymbole$B$N7Q>54X78$O$h$/$o$+$i$J$$$1$I!"e(B
e$BJL$N%-!<$7$F07$o$l$J$$$H:$$j$^$9!#e(B

In article [email protected],
Yukihiro M. [email protected] writes:

|e$B:#2s$Ne(B Symbol e$B$N07$$$NJQ99$K:]$7!"$3$N$h$&$JLdBj$O$I$&07$&$3e(B
|e$B$H$,A[Dj$5$l$F$$$^$9$+e(B?

Structe$B$GF1MM$NLdBj$,5/$-$?;~e(B(e$BBh0l0z?t$,J8;zNs$G$"$l$Pe(BStruct
e$BL>!“e(BSymbole$B$G$”$l$P%a%s%PL>$H$7$F$$$?e(B)e$B$K$O!“e(BSymbole$B$G$”$k$+$Ie(B
e$B$&$+$r@h$KH=Dj$9$k$H$$$&J}K!$G2sHr$7$^$7$?!#e(B

e$B;DG0$J$,$i!"$=$NJ}K!$G$Oe(B

open(url, :proxy=>…, “proxy”=>…)

e$B$H$$$&$h$&$K!"e(B:proxy e$B$N@)8f$HF1;~$Ke(B proxy
e$B$H$$$&%X%C%@$r;XDje(B
e$B$9$k$3$H$,$G$-$^$;$s!#$3$l$O!"e(Bopen-uri e$B$N%3!<%I$Ke(B
2e$B$D$NMWAGe(B
e$B$,$?$I$jCe$+$J$$$?$a$G$9!#e(B

e$B$J$s$+$&$^$$J}K!$O$J$$$G$9$+$Me(B?

In article [email protected],
Masatoshi SEKI [email protected] writes:

1.9e$B$@$H$?$H$($P<!$N$h$&$K$J$k$N$G$7$g$&$+e(B?
=> {“a”=>:a}

e$B$($'!#e(B

% ./ruby -ve ’
h = Hash.new
h[“a”] = “a”
h[:a] = :a
p h’
ruby 1.9.0 (2006-09-05) [i686-linux]
{“a”=>:a}

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:29500] Re: symbol and string”
on Wed, 6 Sep 2006 00:36:49 +0900, Tanaka A. [email protected]
writes:

|> Structe$B$GF1MM$NLdBj$,5/$-$?;~e(B(e$BBh0l0z?t$,J8;zNs$G$“$l$Pe(BStruct
|> e$BL>!“e(BSymbole$B$G$”$l$P%a%s%PL>$H$7$F$$$?e(B)e$B$K$O!“e(BSymbole$B$G$”$k$+$Ie(B
|> e$B$&$+$r@h$KH=Dj$9$k$H$$$&J}K!$G2sHr$7$^$7$?!#e(B
|
|e$B;DG0$J$,$i!”$=$NJ}K!$G$Oe(B
|
|open(url, :proxy=>…, “proxy”=>…)
|
|e$B$H$$$&$h$&$K!"e(B:proxy e$B$N@)8f$HF1;~$Ke(B proxy e$B$H$$$&%X%C%@$r;XDje(B
|e$B$9$k$3$H$,$G$-$^$;$s!#$3$l$O!"e(Bopen-uri e$B$N%3!<%I$Ke(B 2e$B$D$NMWAGe(B
|e$B$,$?$I$jCe$+$J$$$?$a$G$9!#e(B

e$B$=$&$+!#e(BHashe$B$O=EJ#$r5v$7$^$;$s$+$i$M!#e(B

|e$B$J$s$+$&$^$$J}K!$O$J$$$G$9$+$Me(B?

e$B;EMMJQ99$7$F$h$1$l$P%X%C%@;XDj$K$Oe(B

“header:proxy”=>…

e$B$H$$$&=q$-J}$rDs0F$7$^$9!#$"$k$$$O%X%C%@;XDj$OJL$N%O%C%7%e$Ge(B
e$B;XDj$9$k$H$+!#e(B

proxy: …, header: {:proxy=> …}

e$B$=$N$^$^$G!"$H$J$k$HNI$$J}K!$O;W$$$D$-$^$;$s$M!#e(B

In article [email protected],
Yukihiro M. [email protected] writes:

e$B;EMMJQ99$7$F$h$1$l$P%X%C%@;XDj$K$Oe(B

“header:proxy”=>…

e$B$H$$$&=q$-J}$rDs0F$7$^$9!#$"$k$$$O%X%C%@;XDj$OJL$N%O%C%7%e$Ge(B
e$B;XDj$9$k$H$+!#e(B

proxy: …, header: {:proxy=> …}

e$B$=$N$^$^$G!"$H$J$k$HNI$$J}K!$O;W$$$D$-$^$;$s$M!#e(B

e$B%X%C%@$NDI2C$O$b$C$H$b$h$/;H$&$b$N$N$R$H$D$J$N$G!“;H$$>!<j$,e(B
e$B0-$/$J$kJ}8~$NJQ99$O$d$j$?$/$”$j$^$;$s!#e(B

e$B;H$$>!<j$,NI$/$J$kJ}8~$NJQ99$G$"$l$P$$$$$s$G$9$,!#e(B

e$B$H$3$m$G!"$J$s$Ge(B Symbol e$B$r$3$s$J$U$&$KJQ$($?$s$G$9$+e(B?

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:29504] Re: symbol and string”
on Wed, 6 Sep 2006 11:00:45 +0900, Tanaka A. [email protected]
writes:

|e$B%X%C%@$NDI2C$O$b$C$H$b$h$/;H$&$b$N$N$R$H$D$J$N$G!“;H$$>!<j$,e(B
|e$B0-$/$J$kJ}8~$NJQ99$O$d$j$?$/$”$j$^$;$s!#e(B

e$B$=$&$+$"!#e(B

|e$B$H$3$m$G!"$J$s$Ge(B Symbol e$B$r$3$s$J$U$&$KJQ$($?$s$G$9$+e(B?

e$B0J2<$N$h$&$JM}M3$G$9!#e(B

  • ActiveSupporte$B$N9-$^$j$K$D$l!"%O%C%7%e%-!<$K$*$$$F%7%s%\e(B
    e$B%k$HJ8;zNs$rF10l;k$7$?$$$H$$$&%K!<%:$,A}$($F$$$k$h$&$@e(B

  • e$B%7%s%%k$KBP$7$FJ8;zNs$N$h$&$KA`:n$7$?$$$H$$$&MW5a$b$"$ke(B
    e$B$i$7$$e(B(RCR342e$B$H$+e(B)

  • Smalltalke$B$G$Oe(BSymbole$B$Oe(BStringe$B$N%5%V%/%i%9e(B

  • immediate symbole$B$,%]%$%s%?CM$H%*!<%P!<%i%C%W$9$ke(B(e$B$7$d$9e(B
    e$B$$e(B)e$B%W%i%C%H%U%)!<%`$,$"$ke(B(OSXe$B$H$+e(B)

e$B$H$O$$$(!"@5D>e(B :proxy e$B$He(B “proxy”
e$B$r6hJL$9$k;H$$J}$OA[Dj$7$Fe(B
e$B$^$;$s$G$7$?!#$I$&$7$?$b$s$@$+!#e(B

e$B31$H$$$$$^$9!#e(B

e$BI=L@$@$1!#e(B

On 2006/09/06, at 9:35, Tanaka A. wrote:

h[“a”] = “a”
h[:a] = :a
p h’
ruby 1.9.0 (2006-09-05) [i686-linux]
{“a”=>:a}

e$B$.$c!<!<!<$C!#e(B
e$B$&$A$Ne(BBTSe$B$,BgBG7b!E!#e(B

Symbole$B$,%7%s%%k$8$c$J$/$J$C$A$c$C$?$s$G$9$+e(B!?

In article [email protected],
Yukihiro M. [email protected] writes:

  • ActiveSupporte$B$N9-$^$j$K$D$l!"%O%C%7%e%-!<$K$*$$$F%7%s%\e(B
    e$B%k$HJ8;zNs$rF10l;k$7$?$$$H$$$&%K!<%:$,A}$($F$$$k$h$&$@e(B

e$B$=$&$$$d9b66$5$s$,$=$C$A$NJ}LL$G$O%7%s%%k$rJQ$JJ8;zNs$@$H;W$Ce(B
e$B$F$$$k?M$,B?$$$i$7$$$H$$$C$F$$$?$h$&$J!#e(B

  • e$B%7%s%%k$KBP$7$FJ8;zNs$N$h$&$KA`:n$7$?$$$H$$$&MW5a$b$"$ke(B
    e$B$i$7$$e(B(RCR342e$B$H$+e(B)

Symbol.all_symbols.sort e$B$,2DG=$H$+$G$9$+$M!#e(B

  • Smalltalke$B$G$Oe(BSymbole$B$Oe(BStringe$B$N%5%V%/%i%9e(B

e$B$=$&$$$de(B Java e$B$G$be(B String e$B$Ne(B intern e$B$Oe(B String
e$B$G$9$M!#e(B

  • immediate symbole$B$,%]%$%s%?CM$H%*!<%P!<%i%C%W$9$ke(B(e$B$7$d$9e(B
    e$B$$e(B)e$B%W%i%C%H%U%)!<%`$,$"$ke(B(OSXe$B$H$+e(B)

e$B$3$l$C$F;d$,D>$7$?$d$D0J30$K2?$+$“$k$s$G$9$+e(B? e$B$=$&$@$C$?$i6=e(B
e$BL#$,$”$k$s$G$9$1$I!#e(B

e$B$H$O$$$(!"@5D>e(B :proxy e$B$He(B “proxy” e$B$r6hJL$9$k;H$$J}$OA[Dj$7$Fe(B
e$B$^$;$s$G$7$?!#$I$&$7$?$b$s$@$+!#e(B

e$B$7$P$i$/9M$($F!“e(B(e$B%X%C%@$Oe(B case insensitive e$B$J$N$Ge(B)
e$B>.J8;z$Ge(B
e$B;O$^$k%X%C%@$O;XDj$G$-$J$/$F$b$$$$$+!”$H;W$$IU$-$^$7$?!#$^$!!"e(B
open-uri e$B$K$D$$$F$O$J$s$H$+$J$k$+$J!#e(B

e$B31$H$$$$$^$9!#e(B

On 2006/09/06, at 18:33, Tanaka A. wrote:

e$B$H$O$$$(!"@5D>e(B :proxy e$B$He(B “proxy” e$B$r6hJL$9$k;H$$J}$OA[Dj$7$Fe(B
e$B$^$;$s$G$7$?!#$I$&$7$?$b$s$@$+!#e(B

e$B$7$P$i$/9M$($F!“e(B(e$B%X%C%@$Oe(B case insensitive e$B$J$N$Ge(B) e$B>.J8;z$Ge(B
e$B;O$^$k%X%C%@$O;XDj$G$-$J$/$F$b$$$$$+!”$H;W$$IU$-$^$7$?!#$^$!!"e(B
open-uri e$B$K$D$$$F$O$J$s$H$+$J$k$+$J!#e(B

e$B$"!<!"$=$&$+!#e(B
e$B;d$NJ}$OA0$Ke(B" "e$B$G$bO"7k$7$h$&$+$J!#e(B

e$B$1$$$8$e!w$$$7$D$+$G$9e(B.

In [ruby-dev:29507] the message: “[ruby-dev:29507] Re: symbol and
string”, on Sep/06 17:48(JST) Yukihiro M. writes:

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

  • Smalltalke$B$G$Oe(BSymbole$B$Oe(BStringe$B$N%5%V%/%i%9e(B

e$B$?$7$+$K$=$&$J$C$F$$$^$9$Me(B.
e$B$=$l$Ke(B, Dictionarye$B>e$G$O>e=q$-$5$l$^$9$Me(B…

e$B$H$O$$$(e(B, e$B:#2s$NJQ99$K$O;?@.$G$O$J$$$G$9$,e(B…

e$B$H$O$$$(!"@5D>e(B :proxy e$B$He(B “proxy” e$B$r6hJL$9$k;H$$J}$OA[Dj$7$Fe(B
e$B$^$;$s$G$7$?!#$I$&$7$?$b$s$@$+!#e(B

e$B$d$O$je(B, e$B0c$&$b$N$O0c$&$H$7$?J}$,$h$$$N$G$O$J$$$+$J$!e(B.

__
---------------------------------------------------->> e$B@PDMe(B
e$B7=<ye(B <<—
---------------------------------->> e-mail: [email protected] <<—

e$B31$H$$$$$^$9!#e(B

On 2006/09/06, at 17:48, Yukihiro M. wrote:

|e$B$H$3$m$G!"$J$s$Ge(B Symbol e$B$r$3$s$J$U$&$KJQ$($?$s$G$9$+e(B?

e$B0J2<$N$h$&$JM}M3$G$9!#e(B

  • ActiveSupporte$B$N9-$^$j$K$D$l!"%O%C%7%e%-!<$K$*$$$F%7%s%\e(B
    e$B%k$HJ8;zNs$rF10l;k$7$?$$$H$$$&%K!<%:$,A}$($F$$$k$h$&$@e(B

  • e$B%7%s%%k$KBP$7$FJ8;zNs$N$h$&$KA`:n$7$?$$$H$$$&MW5a$b$"$ke(B
    e$B$i$7$$e(B(RCR342e$B$H$+e(B)

  • Smalltalke$B$G$Oe(BSymbole$B$Oe(BStringe$B$N%5%V%/%i%9e(B

Smalltalke$B$G$Oe(BSymbole$B$He(BStringe$B$N%$%s%9%?%s%9$Oe(B==e$B$J$s$G$9$+e(B?

  • immediate symbole$B$,%]%$%s%?CM$H%*!<%P!<%i%C%W$9$ke(B(e$B$7$d$9e(B
    e$B$$e(B)e$B%W%i%C%H%U%)!<%`$,$"$ke(B(OSXe$B$H$+e(B)

e$B$H$O$$$(!"@5D>e(B :proxy e$B$He(B “proxy” e$B$r6hJL$9$k;H$$J}$OA[Dj$7$Fe(B
e$B$^$;$s$G$7$?!#$I$&$7$?$b$s$@$+!#e(B

e$B;d$b;H$C$F$^$7$?!#e(B

Symbole$B$,e(BStringe$B$N$h$&$JA`:n$,2DG=$G$"$k$3$H$H!"e(BHashe$B$N%-!<$GF10l;ke(B
e$B$5$l$k$3$H$OF1$8$3$H$J$s$G$7$g$&$+!#e(B

e$B$^$"!"e(BRailse$B$K$O>!$F$J$$$+!#e(B

e$B@DLZ$G$9!#e(B

In mail “[ruby-dev:29491] symbol and string”
Tanaka A. [email protected] wrote:

open-uri e$B$Ge(B :proxy=>nil e$B$H$$$&;XDj$r9T$&$H!"0J2<$N$h$&$K%(%i!<$K$J$j$^$9!#e(B

e$B$3$l$Oe(B Symbol e$B$,e(B String e$B$N%5%V%/%i%9$K$J$C$?$N$,860x$G$9!#e(B

open-uri e$B$G$O%O%C%7%e$rEO$7$?;~$K!"e(BString e$B$,%-!<$N$b$N$O%X%Ce(B
e$B%@$N;XDj$H$_$J$7!"e(BSymbol e$B$,%-!<$N$b$N$OF0:n$r@)8f$9$k;XDj$He(B
e$B$7$F07$C$F$$$^$9!#e(B

e$B$D$^$j!“e(BString e$B$He(B Symbol e$B$O0c$&$b$N$@$H$$$&A[Dj$K$?$C$F$$$ke(B
e$B$o$1$G$9$,!”$=$l$,Jx$l$?$N$GLdBj$K$J$C$F$$$^$9!#e(B

e$B$2!#$=$&$+!#:#5$IU$-$^$7$?$,!“e(BRacc (e$B$G:n@.$7$?%Q!<%5e(B)
e$B$,$d$P$$$G$9!#e(B
e$B:G=i$N:G=i$K%H!<%/%s$r<!$N$h$&$J%F!<%V%k$GJQ49$9$k$N$G!”$3$3$Ge(B
e$B%7%s%%k$HJ8;zNs$,$+$V$C$F$k$H$^$H$b$K%Q!<%9$G$-$J$/$J$j$^$9!#e(B

racc_token_table = {
false => 0,
Object.new => 1,
:DATETIME => 2,
:RECEIVED => 3,
:MADDRESS => 4,
:RETPATH => 5,
:KEYWORDS => 6,
:ENCRYPTED => 7,
:MIMEVERSION => 8,
:CTYPE => 9,
:CENCODING => 10,
:CDISPOSITION => 11,
:ADDRESS => 12,
:MAILBOX => 13,
:DIGIT => 14,
:ATOM => 15,
“,” => 16,
“:” => 17,
:FROM => 18,
:BY => 19,
“@” => 20,
:DOMLIT => 21,
:VIA => 22,
:WITH => 23,
:ID => 24,
:FOR => 25,
“;” => 26,
“<” => 27,
“>” => 28,
“.” => 29,
:QUOTED => 30,
:TOKEN => 31,
“/” => 32,
“=” => 33 }

e$B$D$$$G$K%8%'%M%l!<%?$bM>GH$G;`$K$^$7$?!#e(B
e$B$^$"$3$C$A$N$[$&$O$^$@Ho32$O>.$5$$$G$9$,!#e(B
e$B%Q!<%5$G$O%7%s%%k$HJ8;zNs$C$F$I$N$/$i$$=E$J$C$F$k$s$@$m$&!D!D!#e(B

In message “Re: [ruby-dev:29510] Re: symbol and string”
on Wed, 6 Sep 2006 18:33:28 +0900, Tanaka A. [email protected]
writes:

|> * ActiveSupporte$B$N9-$^$j$K$D$l!"%O%C%7%e%-!<$K$*$$$F%7%s%\e(B
|> e$B%k$HJ8;zNs$rF10l;k$7$?$$$H$$$&%K!<%:$,A}$($F$$$k$h$&$@e(B
|
|e$B$=$&$$$d9b66$5$s$,$=$C$A$NJ}LL$G$O%7%s%%k$rJQ$JJ8;zNs$@$H;W$Ce(B
|e$B$F$$$k?M$,B?$$$i$7$$$H$$$C$F$$$?$h$&$J!#e(B

e$B$=$&$J$s$G$9$h!#e(BRailse$B$K?6$j2s$5$l$k$N$K$O>/!9Dq93$,$“$C$?$Ne(B
e$B$G$9$,e(B(e$B%7%s%%k$HJ8;zNs$r%-!<$H$7$F6hJL$9$kNc$K;W$$;j$i$J$+$Ce(B
e$B$?$N$Ge(B)e$B!”$^$“!”$=$C$A$NJ}$,JXMx$J$3$H$bB?$$$+$J!"$H!#e(B

|> * e$B%7%s%%k$KBP$7$FJ8;zNs$N$h$&$KA`:n$7$?$$$H$$$&MW5a$b$"$ke(B
|> e$B$i$7$$e(B(RCR342e$B$H$+e(B)
|
|Symbol.all_symbols.sort e$B$,2DG=$H$+$G$9$+$M!#e(B

e$B$G$7$g$&$M!#e(B

|> * Smalltalke$B$G$Oe(BSymbole$B$Oe(BStringe$B$N%5%V%/%i%9e(B
|
|e$B$=$&$$$de(B Java e$B$G$be(B String e$B$Ne(B intern e$B$Oe(B String e$B$G$9$M!#e(B

e$B<B$O:GBg$NM}M3$O$3$NJU$G$9!#e(B

|> * immediate symbole$B$,%]%$%s%?CM$H%*!<%P!<%i%C%W$9$ke(B(e$B$7$d$9e(B
|> e$B$$e(B)e$B%W%i%C%H%U%)!<%`$,$“$ke(B(OSXe$B$H$+e(B)
|
|e$B$3$l$C$F;d$,D>$7$?$d$D0J30$K2?$+$”$k$s$G$9$+e(B? e$B$=$&$@$C$?$i6=e(B
|e$BL#$,$"$k$s$G$9$1$I!#e(B

[ruby-core:07401]e$B$G$7$?!#%9%l%C%I$r8+$k$He(Bakre$B$5$s$N%Q%C%A$,Eve(B
e$B$?$C$FD>$C$F$k$O$:$G$9$M!#K:$l$F$^$7$?!"$4$a$s$J$5$$!#e(B

|> e$B$H$O$$$(!"@5D>e(B :proxy e$B$He(B “proxy” e$B$r6hJL$9$k;H$$J}$OA[Dj$7$Fe(B
|> e$B$^$;$s$G$7$?!#$I$&$7$?$b$s$@$+!#e(B
|
|e$B$7$P$i$/9M$($F!“e(B(e$B%X%C%@$Oe(B case insensitive e$B$J$N$Ge(B) e$B>.J8;z$Ge(B
|e$B;O$^$k%X%C%@$O;XDj$G$-$J$/$F$b$$$$$+!”$H;W$$IU$-$^$7$?!#$^$!!"e(B
|open-uri e$B$K$D$$$F$O$J$s$H$+$J$k$+$J!#e(B

e$B$=$l$O$"$j$,$?$$$G$9!#e(B

e$B!!$5$5$@$G$9!#e(B

e$B@PDM7=<ye(B wrote:

e$B$H$O$$$(!"@5D>e(B :proxy e$B$He(B “proxy” e$B$r6hJL$9$k;H$$J}$OA[Dj$7$Fe(B
e$B$^$;$s$G$7$?!#$I$&$7$?$b$s$@$+!#e(B

e$B$d$O$je(B, e$B0c$&$b$N$O0c$&$H$7$?J}$,$h$$$N$G$O$J$$$+$J$!e(B.

e$B!!0c$&$b$N!"$H$$$&$3$H$K0lI<!#e(B

e$B!!e(BString
e$B$N%a%=%C%I$,;H$($k$3$H$O!"B?J,0-$$$3$H$OL5$$$H;W$$$^$9$,!"e(B
Symbol e$B$He(B String e$B$O!VJLJ*!W$H;W$C$F$$$^$9!#e(B

e$B!!e(B:foo == “foo” #=> false e$B$J$N$G!"e(BHash
e$B$GF1$8%-!<$K$J$k$N$b7y$J46$8$Ge(B
e$B$9!#$O$$!#e(B

e$B!!$"$H!"e(B
:abc.sub(/a/, ‘A’) #=> :Abc
e$B$J$N$K!“e(B
:abc.succ #=> “abd”
e$B$J$N$O!”$J$s$G$G$7$g$&!#E}0l$9$k$Y$-$8$c$J$$$+$H;W$$$^$9!#e(B

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:29529] Re: symbol and string”
on Fri, 8 Sep 2006 16:20:28 +0900, SASADA Koichi [email protected]
writes:

|e$B!!0c$&$b$N!"$H$$$&$3$H$K0lI<!#e(B
|
|e$B!!e(BString e$B$N%a%=%C%I$,;H$($k$3$H$O!"B?J,0-$$$3$H$OL5$$$H;W$$$^$9$,!"e(B
|Symbol e$B$He(B String e$B$O!VJLJ*!W$H;W$C$F$$$^$9!#e(B
|
|e$B!!e(B:foo == “foo” #=> false e$B$J$N$G!"e(BHash e$B$GF1$8%-!<$K$J$k$N$b7y$J46$8$Ge(B
|e$B$9!#$O$$!#e(B

e$B:#$^$G$H0c$&0J>e!V%$%d$J46$8!W$r;}$D?M$,$$$k$N$OM}2r$G$-$^$9!#e(B
e$B$,!“M}M3$N$[$&$K6=L#$,$”$j$^$9$M!#$3$&ITJX$@$H$+!“$3$&$$$&M}e(B
e$B6~$G$=$&$”$k$Y$-$G$J$$$H$+!#e(B

akre$B$5$s$O<B:]$KF0$+$J$/$J$C$?Nc$r<($7$F$/$@$5$$$^$7$?$,!"$=e(B
e$B$l$J$j$Ke(B(e$BG<F@$7$F!)e(B)e$BBP1~$7$F$/$@$5$C$?$h$&$G$9$7!#e(B

|e$B!!$"$H!"e(B
| :abc.sub(/a/, ‘A’) #=> :Abc
|e$B$J$N$K!“e(B
| :abc.succ #=> “abd”
|e$B$J$N$O!”$J$s$G$G$7$g$&!#E}0l$9$k$Y$-$8$c$J$$$+$H;W$$$^$9!#e(B

e$B$"!“e(B:abc.sub(/a/, ‘A’)e$B$OJ8;zNs$rJV$9$Y$-$G$9$M!#%7%s%%k$Oe(BGC
e$B$NBP>]$K$J$i$J$$$N$G!“0B0W$K@8@.$9$k$H$9$0$K%7%s%%k%F!<%V%ke(B
e$B$,D1$l>e$,$k4m81$,$”$k$N$G!”%7%s%%k$KBP$9$kJ8;zNsA`:n$G$OJ8e(B
e$B;zNs$r:n$k$h$&$K$7$F$$$^$9!#e(B

                            e$B$^$D$b$He(B e$B$f$-$R$me(B /:|)

e$B31$H$$$$$^$9!#e(B

On 2006/09/08, at 16:49, Yukihiro M. wrote:

|e$B!!e(B:foo == “foo” #=> false e$B$J$N$G!"e(BHash e$B$GF1$8%-!<$K$J$k$N$b7y$J46$8$Ge(B
|e$B$9!#$O$$!#e(B

e$B:#$^$G$H0c$&0J>e!V%$%d$J46$8!W$r;}$D?M$,$$$k$N$OM}2r$G$-$^$9!#e(B
e$B$,!“M}M3$N$[$&$K6=L#$,$”$j$^$9$M!#$3$&ITJX$@$H$+!"$3$&$$$&M}e(B
e$B6~$G$=$&$"$k$Y$-$G$J$$$H$+!#e(B

e$BF1CM$G$J$$$N$Ke(BHashe$B$N%-!<$,F10l$H07$o$l$k$N$O!"e(B
Stringe$B$He(BSynbole$B$N4X78$@$1$K$J$j$^$9$+e(B?

e$B$=$NB>$N%/%i%9$G$b$=$N$h$&$JNc$O$"$j$^$9$+e(B?

e$B%f!<%6Dj5A$N%/%i%9$GF1CM$G$J$$$b$N$rF1$8%-!<$H$7$F07$&$h$&e(B
Hashe$B$K;X<($9$ke(B(?)e$B$3$H$b=PMh$k$N$G$7$g$&$+!#e(B
e$B%-!<MQ$NF1CM8!::%a%=%C%I$,A}$($k$H$+!#e(B

e$B$"!“e(B:abc.sub(/a/, ‘A’)e$B$OJ8;zNs$rJV$9$Y$-$G$9$M!#%7%s%%k$Oe(BGC
e$B$NBP>]$K$J$i$J$$$N$G!“0B0W$K@8@.$9$k$H$9$0$K%7%s%%k%F!<%V%ke(B
e$B$,D1$l>e$,$k4m81$,$”$k$N$G!”%7%s%%k$KBP$9$kJ8;zNsA`:n$G$OJ8e(B
e$B;zNs$r:n$k$h$&$K$7$F$$$^$9!#e(B

e$B$U$`!#e(B
Symbole$B$,e(BGCe$BBP>]$K$J$i$J$$$N$OJQ$o$i$J$$$N$G$9$M!#e(B

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:29532] Re: symbol and string”
on Fri, 8 Sep 2006 19:52:10 +0900, Masatoshi SEKI
[email protected] writes:

|e$BF1CM$G$J$$$N$Ke(BHashe$B$N%-!<$,F10l$H07$o$l$k$N$O!"e(B
|Stringe$B$He(BSynbole$B$N4X78$@$1$K$J$j$^$9$+e(B?

hashe$B$,F1$8CM$rJV$7!"e(Beql?e$B$,??$K$J$k%*%V%8%'%/%H$O%/%i%9$K4X$ie(B
e$B$:F10l$H$_$J$5$l$^$9!#e(B

|e$B$=$NB>$N%/%i%9$G$b$=$N$h$&$JNc$O$"$j$^$9$+e(B?

e$BAH$9~$%/%i%9$G$OB>$K$"$j$^$;$s$M!#%f!<%6Dj5A$J$iC5$;$P8+$De(B
e$B$+$k$+$b$7$l$^$;$s!#e(B

|e$B%f!<%6Dj5A$N%/%i%9$GF1CM$G$J$$$b$N$rF1$8%-!<$H$7$F07$&$h$&e(B
|Hashe$B$K;X<($9$ke(B(?)e$B$3$H$b=PMh$k$N$G$7$g$&$+!#e(B
|e$B%-!<MQ$NF1CM8!::%a%=%C%I$,A}$($k$H$+!#e(B

e$B>e=R$N$H$*$j$G$9!#e(B

e$B!!;29MJ88%A:wCf$N$5$5$@$G$9!%e(B

Yukihiro M. wrote:

akre$B$5$s$O<B:]$KF0$+$J$/$J$C$?Nc$r<($7$F$/$@$5$$$^$7$?$,!"$=e(B
e$B$l$J$j$Ke(B(e$BG<F@$7$F!)e(B)e$BBP1~$7$F$/$@$5$C$?$h$&$G$9$7!#e(B

e$B!!$H$j$"$($:463PE*$K!V$"$j$($M!<!W$H;W$&$N$G!$$=$l$8$cM}M3$K$J$s$J$$$G$9e(B
e$B$h$M$’!%e(B

e$B!!e(BLisp e$B$J$s$+$G$O!$$3$NJU$C$F$I$&$J$s$G$7$g$&!%e(Beq*?
e$B$J4X?t$G%7%s%%k$,F1e(B
e$B$8CM$rJV$9$3$H$O$"$k$s$G$7$g$&$+!%e(B

|e$B!!$"$H!"e(B
| :abc.sub(/a/, ‘A’) #=> :Abc
|e$B$J$N$K!“e(B
| :abc.succ #=> “abd”
|e$B$J$N$O!”$J$s$G$G$7$g$&!#E}0l$9$k$Y$-$8$c$J$$$+$H;W$$$^$9!#e(B

e$B$"!“e(B:abc.sub(/a/, ‘A’)e$B$OJ8;zNs$rJV$9$Y$-$G$9$M!#%7%s%%k$Oe(BGC
e$B$NBP>]$K$J$i$J$$$N$G!“0B0W$K@8@.$9$k$H$9$0$K%7%s%%k%F!<%V%ke(B
e$B$,D1$l>e$,$k4m81$,$”$k$N$G!”%7%s%%k$KBP$9$kJ8;zNsA`:n$G$OJ8e(B
e$B;zNs$r:n$k$h$&$K$7$F$$$^$9!#e(B

e$B!!<B$O!$e(BSymbol
e$B$KE}0l$9$k$N$,$$$$$s$8$c$J$$$+$H;W$C$F$*$j$^$7$?!%$3$N%3e(B
e$B%s%F%-%9%H$G$Oe(B Symbol
e$B$,JV$C$F$/$k;v$r$J$s$H$J$/4|BT$7$^$;$s$+!)!!e(BString
e$B7O$N%a%=%C%I$O!$e(B:sym.to_s.foo
e$B$NC;=L7A$H3P$($k$Y$-$G$7$g$&$+!%$G$b!$e(Bfoo
e$B$,e(B String e$B7O$N%a%=%C%I$@$C$?$C$1!$$H3P$($k$N$,BgJQ$=$&$G$9!%e(B

e$B!!$b$7!$$3$l$i$NM}M3$,!Ve(BSymbol e$B$Oe(B GC
e$B$7$J$$$+$i!W$H$$$&$3$H$J$i!$e(BSymbol
e$B$re(B GC e$B$9$k$h$&$K8!F$$7$F$_$k$N$O$I$&$G$7$g$&$+!JLy<X$+$b!K!%e(B

e$B!!:#2s$NJQ99$G!$e(BSPECIAL_CONST_P(sym) == 0
e$B$K$J$C$?$N$G!$$J$s$H$J$J$k$se(B
e$B$8$c$J$$$N$+$J!<!$$H!$$J$s$H$J$/;W$C$F$$$k$s$G$9$,!$4E$$$G$7$g$&$+!%e(Bmark
e$B$9$k$H$3$m$,$A$g$C$HA}$($k$@$1$+$J!$$H$+;W$C$F$k$s$G$9$,!%$&!<$s!$e(BSymbol
e$B$K$7$J$$$Ge(B ID
e$B$@$1;H$C$F$$$k$b$N$b$"$k$N$G!$$d$C$Q$jFq$7$$$+!)!!e(B
rb_intern e$B$G:n$C$?%%V%8%’%/%H$H!$e(BSymbol
e$B%
%V%8%’%/%H$H$7$F:n$C$?%%Ve(B
e$B%8%’%/%H$rJ,$1$k!JA0<T$K$O>C$5$J$$%U%i%0$rCe$1$F$
$/$H$+!K$J$s$F$I$&$+e(B
e$B$J!$$H$+;W$$$^$7$?!%$H$j$H$a$b$J$$$G$9$,!%e(B