ComplexFloat

e$B$`$i$?$G$9!%e(B

2008/4/11 Yukihiro M. [email protected]:

|e$B$=$N>e$G!$$d$O$jJD$8$?J#AG?t$b$“$k$Y$-$@$H;W$$$^$9!%$=$7$F!$:GE,2=Ey$Ne(B
|e$B2DG=@-$r9M$($l$P!$JD$8$?J#AG?t$,AH9~$_$GDs6!$5$l$F$$$kJ}$,<+A3$G$”$ke(B
|e$B$H;W$$$^$9!%e(B

e$BC1=c$5$dB>$N%/%i%99=@.$H$N@09g@-$r5>@7$K$7$F$^$GJD$8$?J#AG?te(B
e$B%/%i%9$rJL$KMQ0U$9$Y$-M}M3$O:GE,2=$@$1$G$9$+!)e(B

e$B:GBg$NM}M3$O:GE,2=$G$9!%0J2<$N$h$&$JM}M3$b$"$j$^$9!%e(B

[email protected],$,IbF0>.?tE@$K$J$C$F$7$^$&$H!$$=$NCM$OB>$NI=8=$K0EL[$KJQ49$G$-$^$;$s!%e(B
e$B8@$$49$($k$H!$IbF0>.?tE@?t$r;}$DJ#AG?t$O!$e(BRational e$B$de(B
Integer e$B$r;}$DJ#AG?t$re(B
e$BA4It?)$Y$F$7$^$&$s$G$9!%$=$l$@$1$G$J$/!$$?$H$($Pe(B
CMath.sine$B!$e(BCMath.exp e$B$J$I$Ne(B
e$B?t3X4X?t$N7k2L$OIbF0>.?tE@?t$r;}$DJ#AG?t$K$J$k$N$G!$@8@.$5$l$kJ#AG?t$NB?$/$,e(B
e$BIbF0>.?tE@?t$r;}$D$3$H$,M=A[$G$-$^$9!%e(B

e$B$[$H$s$I$Ne(B Complex
[email protected],$,IbF0>.?tE@?t$J$s$@$7!$IbF0>.?tE@?t$+$iB>$N7?$K$Oe(B
e$BJQ49$5$l$J$$$s$@$+$i!$e(BComplexFloat
e$B$H$7$FFC<l2=$7$F$bNI$$$@$m$&$H$b9M$($F$$$^$9!%e(B

sin(e$B&Pe(B / 6) = 1/2 e$B$G$9$,!$e(BMath.sin(Math::PI / 6)

e$B$N7k2L$H$7$Fe(B Rational(1, 2) e$B$re(B

e$BJV$7$F$O$J$i$J$$$H$$$&;v$KCm0U$7$F$/$@$5$$!%e(BMath::PI e$B$Oe(B

e$B&Pe(B e$B$G$O$J$/!$e(B

e$B&Pe(B e$B$N6a;wCM$G$9!%e(B

e$B8=:$Ne(BYARVe$B$N:GE,2=<BAu$r9M$($k$H!"AH$9~$%/%i%9e(B(e$B$?$H$($Pe(B
Float)e$B$,JQ99$5$l$F$$$J$$;~$K$O9bB.$J%W%j%
%F%#%V$,F0$/$H$$$&e(B
e$BF0:n$re(BComplex(e$B$de(BRational)e$B$KE,MQ$7$F$O$$$1$J$$e(B(or e$B$G$-$J$$e(B)e$BM}e(B
e$BM3$OL5$$$H;W$&$N$G$9$,!#e(B

e$B8=:_$Ne(B Complex e$B$O<BIt$,e(B Float e$B$G5uIt$,e(B Rational
e$B$N$h$&$J>uBV$K$J$l$^$9!%e(B
e$B$G$9$+$i!$e(BComplex
e$B$KBP$7$F$=$N$h$&$J:GE,2=$r9T$&[email protected],$N7?8!::$re(B
e$B<BIt!&5uIt$KJ,$1$FKh2s9T$&I,MW$,$"$j$^$9!%e(BComplexFloat
e$B$rF3F~$9$k$H!$e(B
e$B%G!<%?%U%m!<2r@O$G3N<B$Ke(B ComplexFloat
e$B$K$J$k$3$H$,J,$+$C$F$$$kItJ,$Oe(B
e$B7?8!::$J$7$G:GE,2=$G$-$^$9!%e(B

ComplexFloat e$B$,Mm$`7W;;$G$Oe(B ComplexFloat

e$B$7$+=P$F$3$J$$;v$KCm0U$7$F$/$@$5$$!%e(B

e$B$?$@$7!$1i;;$NAj<j$,e(B Complex(BigDeciam, BigDeciam)

e$B$G$"$k>l9g$K$D$$$F$O!$e(B

e$B$I$&$9$k$Y$-$+$^$@J,$+$j$^$;$s!%e(BBigDecimal e$B$He(B Float

e$B$O2>?tIt$N4p?t$NDl$,e(B

e$B0[$J$C$F$*$j!$0EL[$KJQ49$9$Y$-$G$O$J$$$+$i$G$9!%e(B

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

In message “Re: [ruby-dev:34362] Re: ComplexFloat”
on Sat, 12 Apr 2008 23:23:20 +0900, “Kenta M.”
[email protected] writes:

|> e$BC1=c$5$dB>$N%/%i%99=@.$H$N@09g@-$r5>@7$K$7$F$^$GJD$8$?J#AG?te(B
|> e$B%/%i%9$rJL$KMQ0U$9$Y$-M}M3$O:GE,2=$@$1$G$9$+!)e(B
|
|e$B:GBg$NM}M3$O:GE,2=$G$9!%0J2<$N$h$&$JM}M3$b$"$j$^$9!%e(B
|
|[email protected],$,IbF0>.?tE@$K$J$C$F$7$^$&$H!$$=$NCM$OB>$NI=8=$K0EL[$KJQ49$G$-$^$;$s!%e(B
|e$B8@$$49$($k$H!$IbF0>.?tE@?t$r;}$DJ#AG?t$O!$e(BRational e$B$de(B Integer e$B$r;}$DJ#AG?t$re(B
|e$BA4It?)$Y$F$7$^$&$s$G$9!%$=$l$@$1$G$J$/!$$?$H$($Pe(B CMath.sine$B!$e(BCMath.exp e$B$J$I$Ne(B
|e$B?t3X4X?t$N7k2L$OIbF0>.?tE@?t$r;}$DJ#AG?t$K$J$k$N$G!$@8@.$5$l$kJ#AG?t$NB?$/$,e(B
|e$BIbF0>.?tE@?t$r;}$D$3$H$,M=A[$G$-$^$9!%e(B
|
|e$B$[$H$s$I$Ne(B Complex [email protected],$,IbF0>.?tE@?t$J$s$@$7!$IbF0>.?tE@?t$+$iB>$N7?$K$Oe(B
|e$BJQ49$5$l$J$$$s$@$+$i!$e(BComplexFloat e$B$H$7$FFC<l2=$7$F$bNI$$$@$m$&$H$b9M$($F$$$^$9!%e(B

e$B$3$NJU$,H/A[$N0c$$$G!“;d$N9M$($G$O!”:GE,2=$H$$$&$N$O$"$/$^$G$be(B
e$B<BAu$NET9g$G!"30$K8+$($k$N$O$+$C$30-$$$H;W$C$F$^$9!#$@$+$i!“e(B
e$B@5D>e(BFixnume$B$He(BBignume$B$N6hJL$b$+$C$30-$$!#$3$l$Oe(BFixnume$B$,B(CM$G$”$Ce(B
e$B$?4X78$G2sHr$G$-$^$;$s$G$7$?!#e(B

|e$B8=:_$Ne(B Complex e$B$O<BIt$,e(B Float e$B$G5uIt$,e(B Rational e$B$N$h$&$J>uBV$K$J$l$^$9!%e(B
|e$B$G$9$+$i!$e(BComplex e$B$KBP$7$F$=$N$h$&$J:GE,2=$r9T$&[email protected],$N7?8!::$re(B
|e$B<BIt!&5uIt$KJ,$1$FKh2s9T$&I,MW$,$"$j$^$9!%e(BComplexFloat e$B$rF3F~$9$k$H!$e(B
|e$B%G!<%?%U%m!<2r@O$G3N<B$Ke(B ComplexFloat e$B$K$J$k$3$H$,J,$+$C$F$$$kItJ,$Oe(B
|e$B7?8!::$J$7$G:GE,2=$G$-$^$9!%e(B

e$BN>@.J,$,e(BFloate$B$G$“$ke(BComplexe$B$r:n$k;~E@$G%U%i%0$rN)$F$l$P$h$$$3e(B
e$B$H$G$O$J$$$s$G$7$g$&$+!#$[$H$s$I$N>l9g$K$Oe(BFloate$B$Je(BComplexe$B$O@8e(B
e$B@.;~$KJ,$+$C$F$$$k$s$G$O$J$$$+$H;W$&$N$G!#%U%i%0$,N)$C$F$$$le(B
e$B$P9bB.$K7W;;$G$-$k$N$G$”$l$P!"B<ED$5$s$N4uK>$9$kDxEY$N:GE,2=e(B
e$B$Oe(B(e$B$o$:$+$J%S%C%H1i;;$NA}2CDxEY$Ge(B)e$B<B8=$G$-$=$&$J5$$,$7$^$9!#e(B

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

e$B$`$i$?$G$9!%e(B

2008/4/12 Tanaka A. [email protected]:

e$B8=:_$Ne(B Complex e$B$O<BIt$,e(B Float e$B$G5uIt$,e(B Rational e$B$N$h$&$J>uBV$K$J$l$^$9!%e(B
e$B$G$9$+$i!$e(BComplex e$B$KBP$7$F$=$N$h$&$J:GE,2=$r9T$&[email protected],$N7?8!::$re(B
e$B<BIt!&5uIt$KJ,$1$FKh2s9T$&I,MW$,$"$j$^$9!%e(BComplexFloat e$B$rF3F~$9$k$H!$e(B
e$B%G!<%?%U%m!<2r@O$G3N<B$Ke(B ComplexFloat e$B$K$J$k$3$H$,J,$+$C$F$$$kItJ,$Oe(B
e$B7?8!::$J$7$G:GE,2=$G$-$^$9!%e(B

Ruby e$B%W%m%0%i%`$KBP$9$k%G!<%?%U%m!<2r@O$C$F$I$&$d$k$s$G$9$+e(B?

ComplexFloat e$B$,AH$9~$$GDs6!$5$l$F$$$l$P!$e(BComplexFloat
e$B$,@8@.$5$l$ke(B
e$B%]%$%s%H$Oe(B (e$B4X?t$N>e=q$-$,$5$l$F$$$J$$>r7o2<$Ge(B)
e$B3NDj$9$k$O$:$G$9!%$5$i$K!$e(B
ComplexFloat
e$B$rH<$&1i;;$bAH$9~$$N$b$N$O;vA0$KCN$C$F$$$k$o$1$G$9$+$i!$e(B
ComplexFloat
e$B$,Mm$`1i;;$NN.$l$r%3%s%Q%$%i$,DI$&$3$H$O2DG=$@$H;W$$$^$9!%e(B
FIxnume$B!$e(BBignume$B!$e(BRationale$B!$$=$7$Fe(B Float
e$B$N1i;;$bF1MM$NJ}K!$G:GE,2=2DG=e(B
e$B$@$H;W$$$^$9!%e(B

e$B$`$i$?$G$9!%e(B

2008/4/12 Yukihiro M. [email protected]:

|e$B$[$H$s$I$Ne(B Complex [email protected],$,IbF0>.?tE@?t$J$s$@$7!$IbF0>.?tE@?t$+$iB>$N7?$K$Oe(B
|e$BJQ49$5$l$J$$$s$@$+$i!$e(BComplexFloat e$B$H$7$FFC<l2=$7$F$bNI$$$@$m$&$H$b9M$($F$$$^$9!%e(B

e$B$3$NJU$,H/A[$N0c$$$G!“;d$N9M$($G$O!”:GE,2=$H$$$&$N$O$"$/$^$G$be(B
e$B<BAu$NET9g$G!"30$K8+$($k$N$O$+$C$30-$$$H;W$C$F$^$9!#$@$+$i!“e(B
e$B@5D>e(BFixnume$B$He(BBignume$B$N6hJL$b$+$C$30-$$!#$3$l$Oe(BFixnume$B$,B(CM$G$”$Ce(B
e$B$?4X78$G2sHr$G$-$^$;$s$G$7$?!#e(B

e$B$H$$$&$3$H$O$^$D$b$H$5$s$NM}A[$O!$e(B Fixnum e$B$be(B Bignum
e$B$bL5$/$F!$e(B
Integer e$B$@$1$,B8:_$9$k>uBV$J$s$G$9$M!%3N$+$K$=$NJ}$,e:No$@$He(B
e$B;d$b;W$$$^$9!%e(B

e$BN>@.J,$,e(BFloate$B$G$"$ke(BComplexe$B$r:n$k;~E@$G%U%i%0$rN)$F$l$P$h$$$3e(B
e$B$H$G$O$J$$$s$G$7$g$&$+!#e(B

e$B%U%i%0$rN)$F$l$PNI$$$H$$$&$N$O$=$N$H$*$j$G$9$,!$$=$N>l9g$Oe(B
e$B8e=R$9$kE@$,5$$K$J$j$^$9!%e(B

e$B$[$H$s$I$N>l9g$K$Oe(BFloate$B$Je(BComplexe$B$O@8e(B
e$B@.;~$KJ,$+$C$F$$$k$s$G$O$J$$$+$H;W$&$N$G!#%U%i%0$,N)$C$F$$$le(B
e$B$P9bB.$K7W;;$G$-$k$N$G$"$l$P!"B<ED$5$s$N4uK>$9$kDxEY$N:GE,2=e(B
e$B$Oe(B(e$B$o$:$+$J%S%C%H1i;;$NA}2CDxEY$Ge(B)e$B<B8=$G$-$=$&$J5$$,$7$^$9!#e(B

e$B3N$+$K!$$[$H$s$I$Ne(B Float e$B$Je(B Complex
e$B$O@8@.;~$K3NDj$7$F$$$F!$$=$l$+$ie(B
e$BGI@8E*$K@8@.$5$l$kCM$bFCDj2DG=$G$9!%e(B

e$B$=$l$G$Oe(B Complex e$BFb$G%U%i%0$rN)$F$Fe(B Float
e$B$+H]$+$rFCDj$9$k$3$H$Ke(B
e$B$7$?$H2>Dj$7$F!$8=>u$N;EMM$NLdBjE@$r5s$2$^$9!%0lE@$O!$<BIt!&5uIt6&$Ke(B
Float e$B$G$"$ke(B Complex e$B$,!$e([email protected],$re(B VALUE
e$B$G;}$D;v$G$9!%$3$l$O%*%V%8%'%/%He(B
e$B6u4V$NL5BL$J$N$Ge(B union e$B$Ge(B double
e$B$NG[Ns$H@Z$jBX$($k;v$rDs0F$7$^$9!%e(B
e$BFsE@L$O!$$$$^$Ne(B Complex e$B$,e(B Float e$B$He(B Integer/Rational
e$B$rF1;~$K;}$F$k;v$G$9!%e(B
e$B<BIt$+5uIt$N$I$A$i$+e(B Float e$B$K$J$C$?$H$-$O!$$b$&0lJ}$be(B Float
e$B$K$9$k$3$H$re(B
e$BDs0F$7$^$9e(B (e$B"he(B
e$BJ#AG?t$O<BIt$H5uIt$r9g$o$;$F0l$D$NCM$@$+$ie(B)e$B!%e(B

e$B$`$i$?$G$9!%e(B

2008/4/13 Tanaka A. [email protected]:

YARV e$B$O4X?t$N>e=q$-$,9T$o$l$k2DG=@-$,$“$k$H$$$&A0Ds$G<BAu$5e(B
e$B$l$F$$$^$9$,!”$I$&$$$&$U$&$KJQ$($k$s$G$7$g$&e(B?

e$B4X?t$N>e=q$-$,5/$-$?;~E@$GCY$$e(B (e$B>e=q$-$,5/$-$F$b@5$7$/F0:n$9e(B
e$B$ke(B) e$B<BAu$KA+0$9$k$s$G$7$g$&$+e(B?
e$B$=$l$H$b!"4X?t$N>e=q$-$r6X;_$9$k$s$G$7$g$&$+e(B?

e$B4X?t$N>e=q$-$r6X;_$9$k$He(B Ruby
e$B$NBg$-$JFCD’$,<:$o$l$F$7$^$$$^$9$h$M!%e(B
e$B$@$+$i!$$=$N$h$&$J;EMMJQ99$ODs0F$7$F$bDL$i$J$$$H;W$o$l$^$9!%e(B
e$B$G$9$+$i!$4X?t$N>e=q$-$K$h$C$FHs:GE,2=<BAu$KA+0$9$k$3$H$K$J$k$H;W$$$^$9!%e(B

e$B;d$N8D?ME*$J8+2r$r8@$&$H!$?tCM%/%i%9$N1i;;$O>e=q$-IT2DG=$K$J$C$F$/$l$?$ie(B

e$B$H$F$b4r$7$$$G$9$M!%$=$&$J$l$Pe(B Rational e$B$de(B Complex

e$B$N<BAu$r$b$C$H4JC1$Ke(B

e$B$G$-$k$H;W$$$^$9$7!$?7$?$J?tCM%/%i%9$r:n$k>l9g$b4r$7$$5$$,$7$^$9!%e(B

e$BA0<T$@$H$7$?$i!"$=$N<BAu$O$=$&4JC1$J$b$N$G$O$J$$$H;W$&$s$G$9e(B
e$B$,!"e(B

e$B4JC1$G$O$J$$$H;W$$$^$9$,!$IT2DG=$G$O$J$$$G$7$g$&!%e(B
e$B8=$Ke(B Fixnum e$B$KBP$9$k%a%=%C%I8F$S=P$7$N:GE,2=$r$5$5$@$5$s$,e(B
opt_plus
e$B$J$I$NL?Na$G<B8=$5$l$F$^$9$h$M!)$=$l$NH/E87A$@$H;W$$$^$9!%e(B

e$BC/$,$$$D<BAu$9$k$s$G$9$+e(B?

e$BJ,$+$j$^$;$s!%;d$O$?$@!$:GE,2=$G$-$k2DG=@-$,$"$k$H8@$C$F$$$k$@$1$G$9!%e(B
e$B$b$7$+$7$?$i;d$,$d$k$+$b$7$l$J$$$7!$$d$i$J$$$+$b$7$l$^$;$s!%B>$N?M$,e(B
e$B$d$C$F$/$l$k$+$b$7$l$J$$$7!$C/$b$d$i$J$$$+$b$7$l$J$$$G$9!%e(B

In article
[email protected],
“Kenta M.” [email protected] writes:

ComplexFloat e$B$,AH$9~$$GDs6!$5$l$F$$$l$P!$e(BComplexFloat e$B$,@8@.$5$l$ke(B
e$B%]%$%s%H$Oe(B (e$B4X?t$N>e=q$-$,$5$l$F$$$J$$>r7o2<$Ge(B) e$B3NDj$9$k$O$:$G$9!%$5$i$K!$e(B
ComplexFloat e$B$rH<$&1i;;$bAH$9~$$N$b$N$O;vA0$KCN$C$F$$$k$o$1$G$9$+$i!$e(B
ComplexFloat e$B$,Mm$`1i;;$NN.$l$r%3%s%Q%$%i$,DI$&$3$H$O2DG=$@$H;W$$$^$9!%e(B
FIxnume$B!$e(BBignume$B!$e(BRationale$B!$$=$7$Fe(B Float e$B$N1i;;$bF1MM$NJ}K!$G:GE,2=2DG=e(B
e$B$@$H;W$$$^$9!%e(B

YARV e$B$O4X?t$N>e=q$-$,9T$o$l$k2DG=@-$,$“$k$H$$$&A0Ds$G<BAu$5e(B
e$B$l$F$$$^$9$,!”$I$&$$$&$U$&$KJQ$($k$s$G$7$g$&e(B?

e$B4X?t$N>e=q$-$,5/$-$?;~E@$GCY$$e(B (e$B>e=q$-$,5/$-$F$b@5$7$/F0:n$9e(B
e$B$ke(B) e$B<BAu$KA+0$9$k$s$G$7$g$&$+e(B?
e$B$=$l$H$b!"4X?t$N>e=q$-$r6X;_$9$k$s$G$7$g$&$+e(B?

e$BA0<T$@$H$7$?$i!"$=$N<BAu$O$=$&4JC1$J$b$N$G$O$J$$$H;W$&$s$G$9e(B
e$B$,!"C/$,$$$D<BAu$9$k$s$G$9$+e(B?

e$B8e<T$@$H$7$?$ie(B… e$B$b$7Ds0F$,DL$l$P!"$5$5$@$5$s$O4n$S$=$&$G$9e(B
e$B$M!#e(B

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

Tanaka A. wrote:

e$B4X?t$N>e=q$-$,5/$-$?;~E@$GCY$$e(B (e$B>e=q$-$,5/$-$F$b@5$7$/F0:n$9e(B
e$B$ke(B) e$B<BAu$KA+0$9$k$s$G$7$g$&$+e(B?
e$B$=$l$H$b!"4X?t$N>e=q$-$r6X;_$9$k$s$G$7$g$&$+e(B?

e$BA0<T$@$H$7$?$i!"$=$N<BAu$O$=$&4JC1$J$b$N$G$O$J$$$H;W$&$s$G$9e(B
e$B$,!"C/$,$$$D<BAu$9$k$s$G$9$+e(B?

e$B!!$$$/$D$+0F$O$"$j$^$9$,!$%a%=%C%I$r$^$?$$$@7?$NEAHB$N2r@O$O!$e(BRubye$B$Ge(B
e$B$O$=$s$J$K4JC1$K$O$$$-$^$;$s!%$3$NJU$O$b$C$H>$7$$?M$,5o$=$&$G$9$M!%e(B

e$B!!C&:GE,2=$N;EAH$$r$-$A$s$H<BAu$9$l$P!$$3$NJU$NOC$OHtLvE*$K$$$m$$$me(B
e$B$H?J$
$=$&$G$9!%$?$@$7!$$9$0$K=PMh$k$h$&$J4JC1$JOC$G$O$J$$$3$H$O3N$+e(B
e$B$G$9!%4JC1$@$C$?$i$I$&$7$h$&!%e(B

e$B8e<T$@$H$7$?$ie(B… e$B$b$7Ds0F$,DL$l$P!"$5$5$@$5$s$O4n$S$=$&$G$9e(B
e$B$M!#e(B

e$B!!5U$K!$DL$k$H$3$l$^$G$N6lO+$,e(B…e$B!%e(B

e$B!!$3$NJU$NOC$O!$<B:]$K>Z5r$rFM$-$D$1$Fe(B

e$B!&$[$i!$$3$&$d$k$HB.$$$G$7$g$&e(B
e$B!&$3$NJ}<0$8$c$3$s$J$KCY$/$J$j$^$9$he(B
e$B!&$3$N%"%W%j%1!<%7%g%s$G$O$3$s$J$Ke(B (e$B:$$ke(B|e$B=u$+$ke(B)
e$B$G$7$g$&e(B

e$B$J$I$H$$$&$H!$@bF@NO$,A}$9$s$8$c$J$$$+$H;W$$$^$9!%!VB?J,!$$=$NJ}K!e(B
e$B$8$cCY$/$J$k$+$i!W$@$H!$$I$l$/$i$$CY$/$J$j!$$I$s$J%1!<%9$G:$$k$N$+$oe(B
e$B$+$i$J$$$N$G!$@bF@NO$,$"$^$j$J$$$+$b$7$l$^$;$s!%$A$g$C$H$7$?!$4JC1$Je(B
e$B<B83$G$b$"$k$H!$@bF@NO$,$0$C$HA}$9$H;W$$$^$9!%e(B

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

Kenta M. wrote:

e$B;d$N8D?ME*$J8+2r$r8@$&$H!$?tCM%/%i%9$N1i;;$O>e=q$-IT2DG=$K$J$C$F$/$l$?$ie(B

e$B$H$F$b4r$7$$$G$9$M!%$=$&$J$l$Pe(B Rational e$B$de(B Complex e$B$N<BAu$r$b$C$H4JC1$Ke(B

e$B$G$-$k$H;W$$$^$9$7!$?7$?$J?tCM%/%i%9$r:n$k>l9g$b4r$7$$5$$,$7$^$9!%e(B

e$B!!$h$/$o$+$C$F$$$J$$$N$G$9$,!$:FDj5AIT2DG=$@$C$?$i?7$?$J?tCM%/%i%9$re(B
e$B:n$k$N$K:$$C$?$j$7$J$$$G$7$g$&$+!%e(B

In article
[email protected],
“Kenta M.” [email protected] writes:

e$B4X?t$N>e=q$-$r6X;_$9$k$He(B Ruby e$B$NBg$-$JFCD’$,<:$o$l$F$7$^$$$^$9$h$M!%e(B
e$B$@$+$i!$$=$N$h$&$J;EMMJQ99$ODs0F$7$F$bDL$i$J$$$H;W$o$l$^$9!%e(B
e$B$G$9$+$i!$4X?t$N>e=q$-$K$h$C$FHs:GE,2=<BAu$KA+0$9$k$3$H$K$J$k$H;W$$$^$9!%e(B

e$B$J$k$[$I!#e(B

e$BA0<T$@$H$7$?$i!"$=$N<BAu$O$=$&4JC1$J$b$N$G$O$J$$$H;W$&$s$G$9e(B
e$B$,!"e(B

e$B4JC1$G$O$J$$$H;W$$$^$9$,!$IT2DG=$G$O$J$$$G$7$g$&!%e(B
e$B8=$Ke(B Fixnum e$B$KBP$9$k%a%=%C%I8F$S=P$7$N:GE,2=$r$5$5$@$5$s$,e(B opt_plus
e$B$J$I$NL?Na$G<B8=$5$l$F$^$9$h$M!)$=$l$NH/E87A$@$H;W$$$^$9!%e(B

opt_plus e$B$G$N:GE,2=$,2DG=$J$N$O2C;;$ND>A0$K8!::$r9T$&$?$a$K!"e(B
e$B:FDj5A$5$l$F$$$k$+$I$&$+H=CG$G$-$k$+$i$G$7$g$&!#e(B

e$B%G!<%?%U%m!<2r@O$H$7$F;vA0$K$d$k$H$J$k$H!":FDj5A$5$l$F$$$k$+e(B
e$B$I$&$+$NH=CG<+BN$,LdBj$H$J$k$?$a!"OC$,$:$$$V$s$HJQ$o$C$F$-$^e(B
e$B$9!#$H$F$bC1=c$JH/E87A$H$7$F:Q$`LdBj$H$O;W$($^$;$s!#e(B

e$BC/$,$$$D<BAu$9$k$s$G$9$+e(B?

e$BJ,$+$j$^$;$s!%;d$O$?$@!$:GE,2=$G$-$k2DG=@-$,$"$k$H8@$C$F$$$k$@$1$G$9!%e(B
e$B$b$7$+$7$?$i;d$,$d$k$+$b$7$l$J$$$7!$$d$i$J$$$+$b$7$l$^$;$s!%B>$N?M$,e(B
e$B$d$C$F$/$l$k$+$b$7$l$J$$$7!$C/$b$d$i$J$$$+$b$7$l$J$$$G$9!%e(B

e$B$G$O!"C/$+$,$d$C$F$+$i5DO@$9$k$N$,$$$$$s$8$c$J$$$G$7$g$&$+!#e(B

e$B$`$i$?$G$9!%e(B

2008/4/13 SASADA Koichi [email protected]:

e$B;d$N8D?ME*$J8+2r$r8@$&$H!$?tCM%/%i%9$N1i;;$O>e=q$-IT2DG=$K$J$C$F$/$l$?$ie(B

e$B$H$F$b4r$7$$$G$9$M!%$=$&$J$l$Pe(B Rational e$B$de(B Complex e$B$N<BAu$r$b$C$H4JC1$Ke(B

e$B$G$-$k$H;W$$$^$9$7!$?7$?$J?tCM%/%i%9$r:n$k>l9g$b4r$7$$5$$,$7$^$9!%e(B

e$B!!$h$/$o$+$C$F$$$J$$$N$G$9$,!$:FDj5AIT2DG=$@$C$?$i?7$?$J?tCM%/%i%9$re(B
e$B:n$k$N$K:$$C$?$j$7$J$$$G$7$g$&$+!%e(B

e$BGI@8%/%i%9$GDj5A$7$J$*$9$3$H$r6X;_$9$kI,MW$O$J$$$N$G!$?7$?$J?tCM%/%i%9$Ne(B
e$B:n@.$K;Y>c$O$J$$$H;W$$$^$9!%e(B

e$B$?$H$($Pe(B

muraken:~/src/ruby$ ./miniruby -e ‘class Fixnum; def +(x); nil; end;
end; p 1 + 1’
nil

e$B$3$&$$$&$3$H$O=PMh$J$/$J$k$1$I!$$^$@B8:_$7$J$$%a%=%C%I$rDI2C$GDj5A$9$k$3$He(B
e$B$O2DG=$G$"$k!$$h$&$J46$8$G$7$g$&$+!%e(B

e$B8=>u$G$b!$%/%i%9$re(B freeze
e$B$9$l$P%a%=%C%I$N>e=q$-!&DI2C$,IT2DG=$K$J$k$N$G!$e(B
freeze
e$B$5$l$F$$$k$3$H$rMxMQ$7$F:GE,2=$5$l$?%3!<%I$K0\9T$9$k$H$$$&J}K!$be(B
e$B$"$j$^$9$+$i!$$=$3$^$GJ#;(2x4q$K$9$kI,MW$OL5$$$+$b$7$l$^$;$s$M!%e(B

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

Kenta M. wrote:

e$B8=>u$G$b!$%/%i%9$re(B freeze e$B$9$l$P%a%=%C%I$N>e=q$-!&DI2C$,IT2DG=$K$J$k$N$G!$e(B
freeze e$B$5$l$F$$$k$3$H$rMxMQ$7$F:GE,2=$5$l$?%3!<%I$K0\9T$9$k$H$$$&J}K!$be(B
e$B$"$j$^$9$+$i!$$=$3$^$GJ#;(2x4q$K$9$kI,MW$OL5$$$+$b$7$l$^$;$s$M!%e(B

e$B!!$=$l$b$d$C$F$_$?$$$s$G$9$,!$$J$+$J$+<j$,=P$:!%e(B

e$B$`$i$?$G$9!%e(B

2008/4/13 Tanaka A. [email protected]:

opt_plus e$B$G$N:GE,2=$,2DG=$J$N$O2C;;$ND>A0$K8!::$r9T$&$?$a$K!"e(B
e$B:FDj5A$5$l$F$$$k$+$I$&$+H=CG$G$-$k$+$i$G$7$g$&!#e(B

e$B$=$N$H$*$j$G$9!%e(B

e$B%G!<%?%U%m!<2r@O$H$7$F;vA0$K$d$k$H$J$k$H!":FDj5A$5$l$F$$$k$+e(B
e$B$I$&$+$NH=CG<+BN$,LdBj$H$J$k$?$a!"OC$,$:$$$V$s$HJQ$o$C$F$-$^e(B
e$B$9!#$H$F$bC1=c$JH/E87A$H$7$F:Q$`LdBj$H$O;W$($^$;$s!#e(B

e$B$o$?$7$bC1=c$JH/E87A$G:Q$$H$O;W$C$F$J$$$G$9!%62$i$/2r@O;~4V$bI,MW$G!$e(B e$B$+$D!$$+$J$jFC<lMQES$K$J$k;W$&$N$G!$$b$7<BAu$7$?$H$7$F$bI8=$G$O$J$/!$e(B
e$B5/F0%%W%7%g%sEy$K$h$kABrE*$J5!G=$K$J$i$6$k$rF@$J$$$H$b;W$C$F$$$^$9!%e(B

e$BC/$,$$$D<BAu$9$k$s$G$9$+e(B?

e$BJ,$+$j$^$;$s!%;d$O$?$@!$:GE,2=$G$-$k2DG=@-$,$"$k$H8@$C$F$$$k$@$1$G$9!%e(B
e$B$b$7$+$7$?$i;d$,$d$k$+$b$7$l$J$$$7!$$d$i$J$$$+$b$7$l$^$;$s!%B>$N?M$,e(B
e$B$d$C$F$/$l$k$+$b$7$l$J$$$7!$C/$b$d$i$J$$$+$b$7$l$J$$$G$9!%e(B

e$B$G$O!"C/$+$,$d$C$F$+$i5DO@$9$k$N$,$$$$$s$8$c$J$$$G$7$g$&$+!#e(B

e$B$=$&$G$9$M!%:GE,2=$K$D$$$F$OC/$+$,$d$C$F$+$i$GNI$$$H;W$$$^$9!%e(B

e$B$`$i$?$G$9!%e(B

2008/4/13 SASADA Koichi [email protected]:

e$B8=>u$G$b!$%/%i%9$re(B freeze e$B$9$l$P%a%=%C%I$N>e=q$-!&DI2C$,IT2DG=$K$J$k$N$G!$e(B
freeze e$B$5$l$F$$$k$3$H$rMxMQ$7$F:GE,2=$5$l$?%3!<%I$K0\9T$9$k$H$$$&J}K!$be(B
e$B$"$j$^$9$+$i!$$=$3$^$GJ#;(2x4q$K$9$kI,MW$OL5$$$+$b$7$l$^$;$s$M!%e(B

e$B!!$=$l$b$d$C$F$_$?$$$s$G$9$,!$$J$+$J$+<j$,=P$:!%e(B

e$B$d$C$Q$j!$e(Bfreeze
e$B$KBP$9$k:GE,2=$O4{$K7W2h$5$l$F$$$?$s$G$9$M!%e(B
e$B%*%V%8%'%/%H$Ne(B freeze e$B$OIT2D5U$JA`:n$J$N$G!$e(Bfreeze
e$B8e$KA+0$9$k%3!<%I$Oe(B
e$B$+$J$jBgI}$K:GE,2=$G$-$^$9$h$M!%e(B

GSoC

e$B$K$3$N%W%m%8%'%/%H$,5s$,$C$F$$$?$i!$$3$C$A$K?=$79~$s$G$?$+$b$7$l$^$;$s!%e(B

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

Kenta M. wrote:

e$B$d$C$Q$j!$e(Bfreeze e$B$KBP$9$k:GE,2=$O4{$K7W2h$5$l$F$$$?$s$G$9$M!%e(B
e$B%*%V%8%’%/%H$Ne(B freeze e$B$OIT2D5U$JA`:n$J$N$G!$e(Bfreeze e$B8e$KA+0$9$k%3!<%I$Oe(B
e$B$+$J$jBgI}$K:GE,2=$G$-$^$9$h$M!%e(B

e$B!!$$$d!$6qBNE*$K$I$&$9$l$P$$$$$N$+!$$^$@A4A3$o$+$C$F$$$^$;$s!%<BAu!&e(B
e$B<B9TB.EYE*$K%Z%$$9$k$+$b$h$/$o$+$j$^$;$s!%$?$@!$B?J,$=$s$J$K4JC1$8$ce(B
e$B$J$$$H;W$C$F$$$^$9!%4JC1$+$b$7$l$J$$$1$I!%C/$+$d$i$J$$$+$J!%e(B

In article [email protected],
“Kenta M.” [email protected] writes:

e$B$=$&$G$9$M!%:GE,2=$K$D$$$F$OC/$+$,$d$C$F$+$i$GNI$$$H;W$$$^$9!%e(B

e$B$($'!“8=;~E@$G<B:]$K9T$o$l$k$+$bITL@$J:GE,2=$N$?$a$K?7$7$$%/e(B
e$B%i%9$rF3F~$;$h!”$H$$$&$N$O$A$g$C$HL5M}$,$"$k<gD%$@$H;W$$$^$9!#e(B

e$B$“$H!”$5$i$K9M$($F5?Ld$K;W$C$?$s$G$9$,!“2>$K!”$=$&$$$&!“$9$4e(B
e$B$$!”%G!<%?%U%m!<2r@O$,2DG=$@$H$7$?$i!“$J$<%/%i%9$rJL$K$9$kI,e(B
e$BMW$,$”$k$N$@$m$&$+!“$H$$$&E@$b$”$k$+$b$7$l$^$;$s!#%G!<%?%U%m!<e(B
e$B2r@O$K$h$j!“$”$ke(B Complex e$B$N%3%s%9%H%i%/%?$N0z?t$,e(B Float
e$B$G$“e(B
e$B$k$3$H$,H=L@$9$l$P!”$=$3$G@8@.$5$l$ke(B Complex e$B%*%V%8%'%/%H$Oe(B
e$BFbIt$,IbF0>.?tE@?t$GI=8=$5$l$k$3$H$b$o$+$k$G$7$g$&$+$i!"e(B
ComplexFloat e$B$H$$$&0[$J$k%/%i%9$K$9$kI,MW$O$J$$$+$b$7$l$^$;e(B
e$B$s!#e(B

e$B$H$9$k$H!“e(BComplexFloat e$B$H$$$&%/%i%9$r?7@_$9$k$H$$$&<gD%$N$?e(B
e$B$a$K$O!”$=$N!“$9$4$$%G!<%?%U%m!<2r@O$Oe(B Complex e$B%*%V%8%'%/%He(B
e$B$,IbF0>.?tE@?t$+$i@8@.$5$l$k$+$I$&$+$OH=CG$G$-$k$[$I$K$O$9$4e(B
e$B$/$J$$!”$H$7$J$$$HOC$,DL$j$^$;$s!#e(B

e$B$G$b!"e(BComplexFloat e$B$,@8@.$5$l$FB-$7;;$J$I$N1i;;$K$?$I$jCe$/e(B
e$B$3$H$OH=CG$G$-$k$,!“e(BFloat e$B$,@8@.$5$l$Fe(B Complex
e$B$N%3%s%9%H%ie(B
e$B%/%?$K$?$I$jCe$/$N$OH=CG$G$-$J$$!”$H$$$&M}M3$r9M$($k$N$O$J$+e(B
e$B$J$+Fq$7$$5$$,$7$^$9!#>/$J$/$H$b8=;~E@$G;d$K$O;W$$$D$-$^$;$s!#e(B

e$B$J$K$+$=$&$$$&M}M3$O$"$k$G$7$g$&$+e(B?

e$B$`$i$?$G$9!%e(B

2008/4/13 Tanaka A. [email protected]:

In article [email protected],
e$B$“$H!”$5$i$K9M$($F5?Ld$K;W$C$?$s$G$9$,!“2>$K!”$=$&$$$&!“$9$4e(B
e$B$$!”%G!<%?%U%m!<2r@O$,2DG=$@$H$7$?$i!“$J$<%/%i%9$rJL$K$9$kI,e(B
e$BMW$,$”$k$N$@$m$&$+!“$H$$$&E@$b$”$k$+$b$7$l$^$;$s!#%G!<%?%U%m!<e(B
e$B2r@O$K$h$j!“$”$ke(B Complex e$B$N%3%s%9%H%i%/%?$N0z?t$,e(B Float e$B$G$“e(B
e$B$k$3$H$,H=L@$9$l$P!”$=$3$G@8@.$5$l$ke(B Complex e$B%*%V%8%'%/%H$Oe(B
e$BFbIt$,IbF0>.?tE@?t$GI=8=$5$l$k$3$H$b$o$+$k$G$7$g$&$+$i!"e(B
ComplexFloat e$B$H$$$&0[$J$k%/%i%9$K$9$kI,MW$O$J$$$+$b$7$l$^$;e(B
e$B$s!#e(B

e$B5f6K$N%G!<%?%U%m!<2r@O!$$H$$$&$+$=$3$^$G$$$/$H7??dO@$H8@$C$?$[$&$,e(B
e$B6a$=$&$G$9$M!%e(B

e$B:G=i$Ke(B ComplexFloat
e$B$H$$$&%/%i%9$N?7@$r<gD%$7$?M}M3$O!$;d$K$Oe(B
e$B8=:
$Ne(B Complex (e$B$$h$Se(B Rational)
e$B$N%3%s%F%JE
$J;EMM$,4{$K7hDj;v9`e(B
e$B$G$"$k$h$&$K;W$($?$+$i$G$9!%e(B

complex.c e$B$de(B rational.c
e$B$,%3%%C%H$5$l$k$^$G$O!$C/0l?M$H$7$FF1MM$N<gD%$re(B
e$B$7$F$$$^$;$s$h$M!%%3%
%C%H8e$K>/?t$N?M$,!Ve(BC99
e$B$NJ#AG?t$r;}$D<BAu$be(B
e$B$"$j$^$9$h!W$H8@$C$F$b!$NI$/J,$+$i$J$$H?O@$@$1$,JV$C$F$/$k>uBV$G$7$?!%e(B
e$B;d$O$3$N$h$&$J>u67$r8+$F!Ve(BComplex
e$B$NCf?H$OJQ99$G$-$J$$$s$@$J!W$HH=CG$7$^$7$?!%e(B
e$B$=$N$?$a!$:G=i$KDs0F$9$k;~E@$G$Oe(B ComplexFloat
e$B$H$$$&?7$7$$%/%i%9$re(B
e$BF3F~$9$k$7$+$J$$$H9M$($F$$$^$7$?!%e(B

e$B$G$b!"e(BComplexFloat e$B$,@8@.$5$l$FB-$7;;$J$I$N1i;;$K$?$I$jCe$/e(B
e$B$3$H$OH=CG$G$-$k$,!“e(BFloat e$B$,@8@.$5$l$Fe(B Complex e$B$N%3%s%9%H%ie(B
e$B%/%?$K$?$I$jCe$/$N$OH=CG$G$-$J$$!”$H$$$&M}M3$r9M$($k$N$O$J$+e(B
e$B$J$+Fq$7$$5$$,$7$^$9!#>/$J$/$H$b8=;~E@$G;d$K$O;W$$$D$-$^$;$s!#e(B

e$B;d$Oe(B ComplexFloat
e$B$rF3F~$7$FM_$7$$$H8@$C$?$H$-$NM}M3$N0l$D$K!$e(B
e$B!Ve(BComplexFloat e$B$Oe(B Float
e$B$GDj5A$5$l$F$$$k1i;;5,B’$K$O0MB8$7$J$$!We(B
e$B$H$$$&;EMM$r;}$?$;$i$l$k;v$r5s$2$^$7$?!%e(B

Complex e$B$,%3%s%F%J$G$“$j!$e(BFloat
e$B$N1i;;5,B’$K0MB8$7$F$$$k0J>e!$e(B
Float e$B$,@8@.$5$l$Fe(B Complex
[email protected],$K$J$C$?$H$3$m$G:GE,2=$G$-$J$$e(B
e$B2DG=@-$,$”$j$^$9!%e(BFloat e$B$@$1$G$O$J$/!$e(BInteger/Rational
e$B$K$b0MB8$9$k$o$1$G!$e(B
e$B%3%s%F%J$H$7$F<BAu$5$l$F$$$ke(B Complex
e$B$O:GE,2=$G$-$J$$>u67$,B?$$$G$9!%e(B
e$BNc$($P!$$"$k%/%i%9$Ne(B coerce e$B$,:FDj5A$5$l$F$7$^$&$H!$IaDL$J$ie(B
Float e$B$re(B
e$B4|BT$G$-$kJ8L.$b$=$&$G$OL5$/$J$C$F$7$^$$$^$9!%e(B

ComplexFloat e$B$OB>$N%/%i%9$N1i;;$r$;$:!$$9$Y$F$N1i;;$re(B C
e$B$GDj$a$i$l$?e(B
e$B1i;;5,B’$G<B9T$9$k$N$G!$B>$N%/%i%9$,:FDj5A$5$l$F$$$k;v$K$O0MB8$;$:e(B
ComplexFloat e$B$N>uBV$@$1$G:GE,2=$N2DG=@-$,7hDj$G$-$^$9!%e(B

e$B$H$$$&OC$r2?EY$+@bL@$5$;$F$$$?$@$-$^$7$?$,!$e(BComplex
e$B$N;EMM<+BN$,$^$@e(B
e$BN.F0E*$G$“$k$H8@$o$l$F$7$^$$!$:G=i$Ke(B ComplexFloat
e$B$rDs0F$7$?$H$-$Ne(B
e$BA0Ds$,Jx$l$F$$$^$9!%$G$9$+$i:#$N;~E@$G$O!$e(BComplex
e$B$N;EMM$K$h$C$F$Oe(B
ComplexFloat e$B$rF3F~$7$J$/$F$b;d$,<gD%$7$?e(B ComplexFloat
e$B$NMxE@$r<B8=e(B
e$B$G$-$k2DG=@-$,$”$j$^$9!%e(B

e$BKNIt$GC1=c$J5?Ld$J$N$G$9$,e(B

Kenta M. e$B$5$s$O=q$-$^$7$?e(B:

ComplexFloat e$B$OB>$N%/%i%9$N1i;;$r$;$:!$$9$Y$F$N1i;;$re(B C e$B$GDj$a$i$l$?e(B
e$B1i;;5,B’$G<B9T$9$k$N$G!$B>$N%/%i%9$,:FDj5A$5$l$F$$$k;v$K$O0MB8$;$:e(B
ComplexFloat e$B$N>uBV$@$1$G:GE,2=$N2DG=@-$,7hDj$G$-$^$9!%e(B

Ce$B$N1i;;5,B’$,9%$-$J$ie(BCe$B$G=q$1$P$$$$$H;W$&$N$G$9$,$J$s$G$=$3$^$G$7$Fe(BRubye$B$Ge(B
Ce$B$HF1$8$3$H$r$5$;$?$$$s$G$9$+e(B?

e$B$$=$i$/;d$,Lg304A$@$+$i$G$7$g$&$,!"$I$N$h$&$J<BNc$G:$$C$F$$i$l$Fe(B
ComplexFloate$B$,$=$l$r$I$&2r7h$9$k$N$+$H$+$,$^$C$?$/8+$($J$$$N$G!“2?$+1@$re(B
e$BDO$`$h$&$JOC$r$5$l$F$$$k0u>]$r<u$1$^$9!#$I$&$K$b;d$K$O%a%=%C%I8F$S=P$7$,e(B
e$B:GE,2=$5$l$?DxEY$G$Oe(BRubye$B$r;H$C$F<BMQE*$JB.EY$G%J%s%P%0%i%s%A%s%0$G$-$k$He(B
e$B;W$($J$$$7!”$=$s$J$Ke(BCe$B$Y$C$?$j$J$ie(BCe$B$G$$$$$8$c$J$$$G$9$+$H;W$&$s$G$9$,!#e(B

e$B$b$&$$$A$I!“2?$,$d$j$?$$$N$+$rL@3N$K$7$F$$$?$@$1$k$H!”$H$F$b$H$F$b=u$+$je(B
e$B$^$9!#e(B

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

In message “Re: [ruby-dev:34366] Re: ComplexFloat”
on Sun, 13 Apr 2008 02:05:49 +0900, “Kenta M.”
[email protected] writes:

|e$B$=$l$G$Oe(B Complex e$BFb$G%U%i%0$rN)$F$Fe(B Float e$B$+H]$+$rFCDj$9$k$3$H$Ke(B
|e$B$7$?$H2>Dj$7$F!$8=>u$N;EMM$NLdBjE@$r5s$2$^$9!%0lE@$O!$<BIt!&5uIt6&$Ke(B
|Float e$B$G$"$ke(B Complex e$B$,!$e([email protected],$re(B VALUE e$B$G;}$D;v$G$9!%$3$l$O%*%V%8%'%/%He(B
|e$B6u4V$NL5BL$J$N$Ge(B union e$B$Ge(B double e$B$NG[Ns$H@Z$jBX$($k;v$rDs0F$7$^$9!%e(B

e$B$^$“!“3N$+$K%%V%8%'%/%He(B3e$B$De(B(60e$B%P%$%He(B)e$B$KHf$Y$k$H%%V%8%'%/%He(B1
e$B$De(B(20e$B%P%$%H!%R!<%W$K3d$jEv$F$?e(Bcomplex(16e$B%P%$%He(B))e$B$NJ}$,%a%b%je(B
e$B8zN($O9b$$$G$7$g$&$M!#$,!”$=$3$^$G$N:GE,2=$,%3%9%H$K8+9g$&$+e(B
e$B$I$&$+$^$@$o$+$j$^$;$s$7!”$+$D!“e(BFloate$B$NDj5A$,=q$-49$($i$l$?;~e(B
e$B$KBP1~$,Fq$7$/$J$k$N$G!”$=$3$^$G5^$$$GBP1~$9$kI,MW$O$J$$$N$Ge(B
e$B$O$J$$$+$H;W$$$^$9!#e(B

|e$BFsE@L$O!$$$$^$Ne(B Complex e$B$,e(B Float e$B$He(B Integer/Rational e$B$rF1;~$K;}$F$k;v$G$9!%e(B
|e$B<BIt$+5uIt$N$I$A$i$+e(B Float e$B$K$J$C$?$H$-$O!$$b$&0lJ}$be(B Float e$B$K$9$k$3$H$re(B
|e$BDs0F$7$^$9e(B (e$B"he(B e$BJ#AG?t$O<BIt$H5uIt$r9g$o$;$F0l$D$NCM$@$+$ie(B)e$B!%e(B

e$B$(!<$H!“$3$l$O6qBNE*$K$O$I$3$r$I$&$9$k$3$H$r9M$($F$$$i$C$7$ce(B
e$B$$$^$9$+!)e(B
e$B7W;;7k2L$G$”$l$P<+F0E*$K$=$&$J$j$^$9$h$M!#@8@.;~$Ke(B
e$BL@<(E*$K;XDj$7$?$N$G$“$l$P!”$=$l$O$=$l$G0U?^DL$j$H$$$&5$$b$7e(B
e$B$^$9$7!#e(B

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

Urabe S. e$B$5$s$O=q$-$^$7$?e(B:

e$B:GE,2=$5$l$?DxEY$G$Oe(BRubye$B$r;H$C$F<BMQE*$JB.EY$G%J%s%P%0%i%s%A%s%0$G$-$k$He(B

e$B$$$^B>$NJ}$+$i;XE&$r<u$1$?$N$G$9$,%J%s%P!V%/!W%i%s%A%s%0e(B"number
crunching"e$B$G$9$M!#%"%[4]=P$7$G?=$7Lu$J$$$G$9!#e(B

e$B$`$i$?$G$9!%e(B

2008/4/14 Yukihiro M. [email protected]:

|e$BFsE@L$O!$$$$^$Ne(B Complex e$B$,e(B Float e$B$He(B Integer/Rational e$B$rF1;~$K;}$F$k;v$G$9!%e(B
|e$B<BIt$+5uIt$N$I$A$i$+e(B Float e$B$K$J$C$?$H$-$O!$$b$&0lJ}$be(B Float e$B$K$9$k$3$H$re(B
|e$BDs0F$7$^$9e(B (e$B"he(B e$BJ#AG?t$O<BIt$H5uIt$r9g$o$;$F0l$D$NCM$@$+$ie(B)e$B!%e(B

e$B$(!<$H!“$3$l$O6qBNE*$K$O$I$3$r$I$&$9$k$3$H$r9M$($F$$$i$C$7$ce(B
e$B$$$^$9$+!)e(B e$B7W;;7k2L$G$”$l$P<+F0E*$K$=$&$J$j$^$9$h$M!#@8@.;~$Ke(B
e$BL@<(E*$K;XDj$7$?$N$G$“$l$P!”$=$l$O$=$l$G0U?^DL$j$H$$$&5$$b$7e(B
e$B$^$9$7!#e(B

e$BNc$($P!$8=:_$G$O0J2<$N$h$&$K?6Iq$$$^$9!%e(B

muraken:~/src/ruby$ ./miniruby -e ‘p Complex(1, Rational(1, 2)) - 0.5’
Complex(0.5, Rational(1, 2))

e$B$3$l$re(B Complex(0.5, 0.5)
e$B$K$7$J$/$F$bNI$$$+$I$&$+$H$$$&;v$G$9!%e(B
e$B0-$$$H$^$G$O8@$($^$;$s$,!$$J$s$@$+5$;}$A0-$$$G$9!%e(B

e$B2C$($F!$$;$C$+$/e(B Rational
e$B$,AH9~$^$l$F$$$k$N$@$+$i!$<!$N7k2L$Oe(B
Complex(Rational(1, 2), Rational(1, 4)) e$B$N$[$&$,NI$$$H;W$$$^$9!%e(B

muraken:~/src/ruby$ ./miniruby -e ‘p Complex(1, Rational(1, 2)) / 2’
Complex(0, Rational(1, 4))

e$B$3$l$i$O!$e(BComplex e$B$N<BAu$,@.J,Kh$Ke(B Ruby
e$B$N5,B’$G1i;;$7$F$$$k$3$H$K$h$C$Fe(B
e$B@8$8$?7k2L$J$s$@$H;W$$$^$9!%e(B