e$B!!$5$5$@$G$9!#e(B
e$B!!e(BRubyConf 2006 e$B$N:G=F|$K$5$C$5$He(B YARV
e$B$r%^!<%8$7$m!"$H$$$o$l$F$7$^$C$?e(B
e$B$N$G!“e(B11e$B7nCf$Ke(B YARV
e$B$,K\2H%j%]%8%H%j$K%^!<%8$G$-$k$h$&$K!”:#:n6H$r?J$a$Fe(B
e$B$$$^$9!#6qBNE$K$O!"$3$NO"5YCf$K7A$K$G$-$l$P$H;W$C$F$$$^$9!#e(B
e$B!!$^$D$b$H$5$s$?$A$HAjCL$7$?7k2L!"6qBNE*$J%W%i%s$O0J2<$N$H$*$j$G$9!#e(B
- e$B8=:_$Ne(B Ruby HEAD (*a) e$B$N;EMM!J$N$[$H$s$I!K$Ke(B YARV
e$B$r$"$o$;$ke(B
e$B$3$N:n6H$O!"e(BYARV e$B$N%j%]%8%H%j$G9T$$$^$9e(B
← e$B$$$^$3$3e(B - Subversion e$B%j%]%8%H%j$re(B (*a) e$B$+$ie(B cvs2svn e$B$G:n$ke(B
(*b) - (*b) e$B$Ke(B YARV e$B$r%^!<%8$7$?$b$N$r%3%_%C%H$9$ke(B (*c)
- 3 e$B$N:n6HCf$Ke(B (*a) e$B$K?7$?$K%3%%C%H$7$?$b$N$re(B (*c)
e$B$K%3%%C%H$9$ke(B (*d)
e$B!J$3$3$^$G$O!":n6H$rA4It$J$+$C$?$3$H$K$G$-$k!Ke(B - (*d) e$B$re(B Ruby e$B$N8x<0%j%]%8%H%j$H$9$ke(B
…
2007/12e$B!!e(BYARV e$B$D$-$Ne(B 1.9.1 e$B%j%j!<%9e(B
e$BC4Ev!‘e(B
e$B!!e(B1, 2, 3: e$B$5$5$@e(B
e$B!!e(B4: e$B$^$D$b$H$5$se(B
e$B!!e(B5: e$B!)e(B
e$B!!e(B5 e$B$r9T$&:G=E$JH=CG!’$^$D$b$H$5$se(B
e$B!!e(B5 e$B$N40N;$r:#7ne(B (2006/11)
e$BCf$K9T$($l$P$H;W$C$F$*$j$^$9!#e(B
e$B!!$3$l$K$H$b$J$$!"e(BRubye$B$N3+H/$K$D$$$F0J2<$N$h$&$KJQ99$K$J$j$^$9!#e(B
a) Ruby e$BI>2A4o$,e(B YARV e$B$K$J$k!&e(BRuby e$B$N;EMM$Ke(B YARV
e$B$N@)8B$,F~$ke(B
e$B!!!&%M%$%F%#%V%9%l%C%I$NMxMQ!"e(BThread.critical e$B$NGQ;_e(B
e$B!!!&e(Beval e$B$Ne(B binding e$B$K4X$9$k5sF0JQ99e(B
e$B!!!&$J$I$J$Ie(B
b) e$B%j%]%8%H%j$Oe(B CVS e$B$+$ie(B Subversion e$B$K$J$ke(B
e$B!!K\7o$K$D$-$^$7$F!“e(BRuby e$B3+H/<T$NJ}!9$K$*4j$$$,$”$j$^$9!#e(B
e$B!&e(Beval.c / parse.y e$B$N5sF0$N:90[$ND4::e(B
e$B!!e(BYARV e$B$NL\E*$Oe(B eval.c
e$B$rL5$/$9$3$H!JI>2A4o$N=q$-49$(!K$G$"$C$?$?$a!“e(B
eval.ce$B!”$D$^$jI>2A4o$KBP$9$kJQ99$K$O==J,$KDI=>$G$-$F$$$^$;$s!#$?$H$($Pe(B
funcall
e$B%a%=%C%I$NF3F~!J:#$O0c$&$s$G$7$?$C$1!)!K!#$J$s$H$J$/!"CfESH>C<$Ke(B
e$BDI=>$7$F$$$k$N$G!"M>7W$o$+$j$E$i$/$J$C$F$$$^$9!#e(B
e$B!!$^$?!"e(Bparse.y
e$B$K$D$$$F$b%3%s%Q%$%i3+H/$H$N7s$M9g$$$+$i:G?7$NJ8K!$KDI=>e(B
e$B$G$-$F$$$^$;$s!#e(B
e$B!!$=$3$G!“e(BYARV e$B$He(B
1.9.0e$B:G?7HG$HHf3S$7$F!V$3$3$,0c$&!W$H$$$&$4;XE&!J$N%je(B
e$B%9%H!K!”%Q%C%A$J$I$rD:$1$l$P$H;W$$$^$9!#e(BCVS
e$B$NJQ99MzNr$+$iJQ99E@$rDI$C$Fe(B
e$B$$$/:n6H$,I,MW$K$J$k$+$b$7$l$^$;$s!#e(B
e$B!!$o$+$j$d$9$$;EMM0J>e$K!“%(%i!<%a%C%;!<%8!&7Y9p$NDI2C!&%;%-%e%j%F%#$K4Xe(B
e$B$9$k5sF0$J$I$,$H$/$KDI=>$G$-$F$$$^$;$s!#$=$l$i$K4X$9$k$4;XE&$r$4j$$$$$?e(B
e$B$7$^$9!#$3$NN`$K4X$9$kLVMeE$J%F%9%H$Oe(B Ruby
e$B$K$OB8:_$7$J$$$N$G!”$3$l$r5!e(B
e$B$K3+H/$9$k$N$b$$$$$+$b$7$l$^$;$s!Je(BRuby
e$B$NIJ<A2~A1$K6=L#$,$"$k?M$,5o$l$P!K!#e(B
e$B!&e(BYARV e$B$N%=!<%9%l%S%e!<e(B
e$B!!e(BYARV e$B$O$Ne(B C
e$B$N%3!<%I$O!“$[$!”$5$5$@0l?M$G:n$C$F$$$?$?$aA4A3?M$NL$,e(B
e$BF~$C$F$$$J$$$?$a!“$A$g$C$H$”$s$^$j$@$m!"$H$$$&$H$3$m$bB?$$$+$H;W$$$^$9!#e(B
e$B$J$N$G!“FI$s$G$b$i$C$F$=$N$”$?$j$4;XE&D:$1$l$P$H;W$$$^$9!#e(B
e$B!!$3$NJU$,$o$+$i$J$$!“$J$I$”$j$^$7$?$i$4<ALdD:$1$l$P2sEz$5$;$F$$$?$@$1$le(B
e$B$P$H;W$C$F$*$j$^$9!#e(B
e$B!&$=$NB>e(B
e$B!!K\7o$K$D$$$F!“$=$NB>$N$4;XE&$b4?7^$7$^$9!#$3$NJQ99<+BN$OBgJQBg$-$J$b$Ne(B
e$B$K$J$k$?$a!”$$$m$$$m$J0U8+$,$“$k$+$H;W$$$^$9!#A0=R$N%U%'!<%:!Ve(B5e$B!W$^$G$Oe(B
e$B$$$/$i$G$b8eLa$j2DG=$J$N$G!”$40U8+D:$1$l$P$H;W$$$^$9!#e(B
YARV: Yet Another Ruby VM
http://www.atdot.net/yarv/
YARV Subversion repository
http://www.atdot.net/svn/yarv/trunk
YARV on ViewCVS
http://www.atdot.net/viewcvs/yarv/trunk/