diff options
author | Yukihiro Matsumoto <matz@ruby-lang.org> | 1995-01-10 00:58:20 +0900 |
---|---|---|
committer | Takashi Kokubun <takashikkbn@gmail.com> | 2019-08-17 22:09:31 +0900 |
commit | 5d828b25d4ae30a000c054a724ac248dadbb97b3 (patch) | |
tree | 080fc6e3b41b9c59cf5def77ae619a82e7e252db /spec | |
parent | bd0c733b77b561f4d12daccebf06a7c71917000b (diff) |
version 0.64v0_64
https://cache.ruby-lang.org/pub/ruby/1.0/ruby-0.64.tar.gz
Tue Jan 10 00:58:20 1995 Yukihiro Matsumoto (matz@dyna)
* eval.c: レシーバと引数は常にiterではない.
* cons.c(aref,aset): negative offset対応.
Mon Jan 9 14:40:39 1995 Yukihiro Matsumoto (matz@ix-02)
* parse.y: foo{..}の形式において,fooをローカル変数やクラス名では
なく,引数なしの関数型メソッド呼び出しとみなすようにした.
* list.c -> cons.c: 名称変更(クラス名も).
* list.c: a::b::c::nilをリスト(a b c)とみなすlisp形式から,a::b::c
をリスト(a b c)とみなすruby形式に変更.[], []=, eachもそれに会わ
せた仕様とする.
* list.c: consペアとしての機能を強調.仕様変更.
Sat Jan 7 01:26:26 1995 Yukihiro Matsumoto (matz@dyna)
* eval.c: 自己代入の不具合修正.
* eval.c(masign): 多重代入が配列もリストもとれるようにした.
* list.c: assocを2要素の配列からList(CONSペア)に変更した.
Fri Jan 6 13:42:12 1995 Yukihiro Matsumoto (matz@ix-02)
* parse.y: a[b]+=cやa.b+=cなどの自己代入形式で,aやbを2度評価しな
くなった.
* eval.c: iterator設定のバグフィックス.
* list.c: Listクラスを新設.
Thu Jan 5 13:55:00 1995 Yukihiro Matsumoto (matz@ix-02)
* parse.y: SCOPEのメモリリークをなくした.
* eval.c: built-inメソッドへの引数の引き渡し方を変更して,配列の生
成数を減らした.
* re.c: match-dataを毎回生成することをやめた.`$~'をアクセスした時
にon-demandで生成する.
* string.c etc: 不必要なmemmoveをmemcpyに置換.
* parse.y: =~, !~は副作用があるのでコンパイル時に展開できない.
Tue Jan 3 02:04:36 1995 Yukihiro Matsumoto (matz@dyna)
* eval.c: rest引数のbug fix.
* eval.c,gc.c: scopeをオブジェクトにした.
* eval.c: envとscopeの扱いを変更した.
Wed Dec 28 09:46:57 1994 Yukihiro Matsumoto (matz@ix-02)
* parse.y: evalでローカル変数が追加された場合に対応した.
* parse.y: 演算子を含むaliasのbug fix.
Tue Dec 27 16:45:20 1994 Yukihiro Matsumoto (matz@ix-02)
* parse.y: def A Bをalias A Bに変更.
* eval.c: alias関係のbug修正.nodeをオブジェクト化した時にenbugし
たようだ.
* signal.c: システムコールの再定義を止めた.
* io.c(select): write/exceptのフラグ設定にバグ.
* Makefile.in: static link用オプションをMake変数として独立させた.
Diffstat (limited to 'spec')
-rw-r--r-- | spec | 135 |
1 files changed, 100 insertions, 35 deletions
@@ -66,13 +66,14 @@ RubyΥ֥ȻظǽˤĤƳؤ٤С궯ϤʤȤǤ褦 ͽϰʲ̤Ǥ - break end module self while - case ensure nil super yield - class fail protect then __END__ - continue for redo undef __FILE__ - def if resque unless __LINE__ - else in retry until - elsif include return when + alias elsif module self yield + and end nil super __END__ + break ensure or then __FILE__ + case fail protect undef __LINE__ + class for redo unless + continue if resque until + def in retry when + else include return while ͽϥ饹̾å̾ѿ̾ʤɤѤ뤳ȤϤǤʤ @@ -414,10 +415,9 @@ moduleʸѤ롥ϱ黻ҷȤäƤ뤬åɤǤϤʤ 1 op= 2 # 1ǽǤʤФʤʤ -ηŪˡּ1 = 1 op 2פŸ졤¹Ԥ롥Τ -12ɾΤǡѤͽۤʤ̤Ƥֲǽ -롥ϥץޤΥ餹ŪΤ¸ߤ -Ǥ롥opȤƻȤ黻Ҥ +ηŪˡּ1 = 1 op 2פƱͤɾ롥1 +1ɾʤΤǡ1Ѥϡּ1 = 1 op 2 +Ȥưۤʤ̤Ȥʤ롥opȤƻȤ黻Ҥ +, -, *, /, %, **, &, |, ^, <<, >> @@ -561,7 +561,7 @@ ifunlesswhileuntilξȽμü黻`&&', `||', ƥ졼Ȥ湽¤(ä˥롼)ݲΤѤåɤ Ǥ롥ƥ졼θƤӽФϰʲιʸǹԤʤ롥 - '{' ѿ... '|' ʸ '}' + '{' ѿ... '|' ʸ... '}' ʸפ֥åȤꤷּפΥåɤƥ졼Ȥɾ 롥ּפΥȥåץ٥Υåɤƥ졼ȤƸƤӽФ졤 @@ -584,7 +584,7 @@ Enumerable⥸塼grepåɤΤ褦˥ƥ졼ȤƸƤФ줿 γǤФʸ¹Ԥ롥ϰʲμǤ롥 - '{' ѿ '|' ʸ '}' + ().each '{' ѿ.. '|' ʸ '}' äƼͤΥ֥Ȥåeachʤ硤for¹Ԥ 㳰ȯ롥 @@ -825,7 +825,7 @@ yieldʸ ʲηǥåɤ̾Ĥ뤳ȤǤ롥 - def å̾1 å̾2 + alias å̾1 å̾2 ̾դ줿åɤϡλǤΥåѤΥ åɤƤ⡤ŤåɤƤӽФ줿ΤƱƯ @@ -865,6 +865,13 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹δؿåɤ(Ƥ exit()Ȥϰäơ㳰ʤɤϰڹԤʤʤfork()θ塤 ץλʤɤѤ롥 + do() + + ֥å1٤¹Ԥ륤ƥ졼֥åޤȤ뤿 + ¸ߤ롥Ȥ: + + do { foobar() } while (baz()) + eof() ޥɥ饤ϤEOFãƤ硤֤ @@ -1263,8 +1270,8 @@ Methods: assoc(key) - Ϣۥꥹ(2ǤǤȤ)1Ǥkey - ("=="Ӥ)֤ + Ϣۥꥹ(CONSڥǤȤ)1Ǥkey + ("=="Ӥ)֤ clear @@ -1497,6 +1504,63 @@ Methods: selfminmaxϰˤ֤ +*** Cons(饹) + +ǡ(ڥ)ɽ륯饹̾`::'黻ҤѤƹԤʤ +롥LispCONSڥƱͤListѤ뤳Ȥ⤢롥 +Cons饹Υå`[]',`[]=',`each'CONSڥʤꥹȤФ +ư褦߷פƤ롥 + +: + a=1::2::3 + a[0] # a[0] => 1 + a[2] = 5 # a => 1::5::3 + for i in a + print i + end # prints `153' + +SuperClass: Object + +Included Modules: Enumerable + +Methods: + + self [nth] + + CONSڥʤꥹȤnthܤǤ֤бǤ¸ + ߤʤnil֤ + + self [nth]= val + + CONSڥʤꥹȤnthܤǤѹ롥ꥹȤĹ + nthǻꤷĹûơбǤ¸ߤʤ + 㳰ȯ롥nthꥹȤĹˤϥꥹȤ + Ǥɲä롥 + + car + + CONSڥΥǡCAR֤ + + car=(val) + + CONSڥCARΥǡѹ롥 + + cdr + + CONSڥΥǡCDR֤ + + cdr=(val) + + CONSڥCDRΥǡѹ롥 + + copy + + CONSڥʤꥹȤʣ֤(shallow copy) + + each + + CONSڥʤꥹȤγǤͿ륤ƥ졼 + *** DBM(饹) NDBMե륯饹ǡȤʸǤʤФ @@ -1533,22 +1597,22 @@ Methods: delete_if - Ǥ륤ƥ졼[key, value]ȤͿơ֥ + Ǥ륤ƥ졼key::valueȤڥͿơ֥ ɾͤλܤ롥 each each_pair - [key, value]ʤͿ륤ƥ졼 - - each_value - - ƤvalueФƷ֤ƥ졼 + key::valueʤڥͿ륤ƥ졼 each_key ƤkeyФƷ֤ƥ졼 + each_value + + ƤvalueФƷ֤ƥ졼 + has_key(key) includes(key) @@ -1625,21 +1689,21 @@ Methods: delete_if - Ǥ륤ƥ졼[key, value]ȤͿơ֥ + Ǥ륤ƥ졼key::valueȤڥͿơ֥ ɾͤλܤ롥 each - each_value + each_pair - ƤvalueФƷ֤ƥ졼 + key::valueʤڥͿ륤ƥ졼 each_key ƤkeyФƷ֤ƥ졼 - each_pair + each_value - [key, value]ʤͿ륤ƥ졼 + ƤvalueФƷ֤ƥ졼 has_key(key) includes(key) @@ -1780,6 +1844,10 @@ Methods: ֺǽǤ0ˤʤ롥Ǥ¸ߤʤˤnil֤ ʤ饹ФƤϤޤ̣ʤ + length + + Ǥο֤ + min ǾǤ֤ƤǤߤ`<=>'åɤӤǤ @@ -2286,7 +2354,7 @@ Methods: each - 磻ɥɤ˥ޥåե֤̾ƥ졼 + 磻ɥɤ˥ޥåե̾Ϳ륤ƥ졼 Single Methods: @@ -2469,10 +2537,8 @@ Methods: self :: other - selfotherǤȤĹ2֤Ȥ - ̣ [self, other]ƱƯ뤬鷺˸ - Ψɤα黻ҤϱǤΤǡa::b::c (a::(b::c)) - Ȳᤵ롥 + selfotherǤȤCONSڥ֤α黻ҤϱǤ + Τǡa::b::c (a::(b::c)) Ȳᤵ롥 is_nil @@ -2645,7 +2711,7 @@ Methods: divmod(other) - Ⱦ;2Ǥ֤ + Ⱦ;Υڥ֤ next @@ -2870,8 +2936,7 @@ Single Methods: socketpair(domain, type, protocol) - åȤΥڥ2ǤȤ֤λ - openƱǤ롥 + åȤΥڥ֤λ openƱǤ롥 *** Regexp(饹) |