diff options
author | Yukihiro Matsumoto <matz@ruby-lang.org> | 1994-10-13 12:13:48 +0900 |
---|---|---|
committer | Takashi Kokubun <takashikkbn@gmail.com> | 2019-08-17 22:09:30 +0900 |
commit | eed5c920dd5429bac6075e9bc98d82360392b424 (patch) | |
tree | 825427093bc27339080dbbcaebc1563703bae357 /spec | |
parent | 6e3090413652b6592346556149fed1e9aec5495d (diff) |
version 0.51v0_51
https://cache.ruby-lang.org/pub/ruby/1.0/ruby-0.51.tar.gz
Thu Oct 13 12:13:48 1994 Yukihiro Matsumoto (matz@ix-02)
* eval.c(SETUP_ARGS): 付加演算子が配列でない時には配列に変換する.
* parse.y: 括弧なしのメソッド呼び出しでも`*'による付加引数が使える
ようにした. ただし, 通常引数が一つもない場合は乗算演算子と区別が
つかないので, 必ず括弧が必要.
Wed Oct 12 10:09:07 1994 Yukihiro Matsumoto (matz@ix-02)
* eval.c(rb_call): キャッシュの計算をinline化. キャッシュミスがあ
れば関数呼び出しでメソッドを検索する. methods.cはなくなった.
* eval.c(rb_eval): ローカル変数用の領域をalloca()するように変更.
サイズの変更が必要になれば改めてmalloc()するように.
* parse.y: error recoveryの際にlex_stateを更新しておくように.
Tue Oct 11 17:10:46 1994 Yukihiro Matsumoto (matz@ix-02)
* socket.c(for_fd): ファイル記述子(Fixnum)からソケットインスタンス
を得るメソッド. たとえばinetdから起動されたサーバで標準入出力に
ソケット操作を行なうために使う. つまりSocket.for_fd($stdin)で標
準入力に対応するソケットオブジェクトが得られる.
* io.c(to_i): IOクラスのインスタンスを整数に変換するとそのファイル
記述子を返すように.
* numeric.c(num2int): to_iメソッドを使って, できる限り整数に変換す
る. 以前はnum2fixだけが全てのオブジェクトに対してto_iメソッドを
適用していた.
* sprintf.c(Fsprintf): 整数表示の際, オブジェクトをできる限り整数
に変換するように(to_iメソッドを使う).
Fri Oct 7 14:06:32 1994 Yukihiro Matsumoto (matz@ix-02)
* eval.c(Fcaller): 必要性がよく分からないのでドキュメントから削除.
将来デバッガを作る時に復活させよう.
* eval.c(rb_call): Cで記述されたメソッド呼び出しでは環境をスタック
にセーブしないことによって高速化.
Wed Oct 5 15:00:58 1994 Yukihiro Matsumoto (matz@ix-02)
* ruby.h: 一時env.hに移動してたQselfの定義を復活. ただし今回は関数
として実現(env.hでは変数として再定義してある).
* ruby.h: TRUEでsyntax errorにならないよう#undefを追加.
* eval.c(rb_eval): thread化に挑戦したが, 失敗(速くならなかった).
が, Scopingなどの無駄なコードの削除とメソッド呼び出しの引数セッ
トのinline化で若干の高速化を実現した. 副作用として, argc, argv形
式の関数呼び出しの仕様が変化した(argvにselfを含まなくなった).
* eval.c(rb_call): メソッド呼び出しの高速化.
Tue Oct 4 11:40:53 1994 Yukihiro Matsumoto (matz@ix-02)
* ruby-mode.el: 修飾子に対応した.
* parse.y: 多重代入にrestをつけた. この機能を使えばoptional引数の
解析が簡単にできる(はず).
* pack.c(unpack): uuencode形式のdecodeの際に文字列の長さが間違って
いた.
Mon Oct 3 15:58:41 1994 Yukihiro Matsumoto (matz@ix-02)
* file.c(type): ファイルタイプを文字列で返すメソッド.
Fri Sep 30 11:36:07 1994 Yukihiro Matsumoto (matz@ix-02)
* object.c: デフォルトの真の値である%TRUEの値を1(Fixnum)からtに変
更した. to_sで文字列に変換した時にも`t'と表示される. 更に踏み込
んで`t'を予約語にしてlispのようにしようかとも思ったが, そこまで
は決心できなかった. 一文字のローカル変数はかなり使いそうな気がす
るので….
* array.c,dict.c: equalを再定義しているクラスで, hashを正しく定義
した.
Wed Sep 28 23:30:28 1994 Yukihiro Matsumoto (matz@dyna)
* eval.c(Ffail): 今までfailはカーネルクラスのメソッドであったが,
構文に組み込んだ. この変更によって, 1)`fail'は予約語となり, ロー
カル変数に用いることができなくなった. 2)`fail'単体で例外を発生す
るようになった. 3)failはメソッドではなくなったので再定義される可
能性がなくなった.
* dic.c, dbm.c(indexes): Arrayのindexesと同様の機能を持つメソッド
を追加.
* array.c(indexes): 引数をインデックスとする要素の配列を返す. 整数
の配列を引数とする時には引数の要素をインデックスとする要素の配列
を返す.
Mon Sep 19 13:42:31 1994 Yukihiro Matsumoto (matz@ix-02)
* array.c(aset): 部分配列に対する代入で配列以外のオブジェクトが指
定された場合に多重代入と同じルールで配列化するようにした.
* io.c(print): 引数として与えられた各オブジェクトにprint_onメッセー
ジを与えるように. 実行速度は落ちるが柔軟性は増す.
Fri Sep 16 14:59:18 1994 Yukihiro Matsumoto (matz@ix-02)
* glob.c: ワイルドカードの導入. bashに使われているGNUのglobルーチ
ンを流用した.
Mon Sep 12 18:36:58 1994 Yukihiro Matsumoto (matz@ix-02)
* parse.y(value_expr): 式がnilの時に対応.
* class.c: ICLASSのclassが必ずClass/Moduleを指すように.
Tue Sep 6 16:23:28 1994 Yukihiro Matsumoto (matz@ix-02)
* re.c: 正規表現内で「\数字」形式が指定できるように.
* parse.y:「do expr using var ... end」形式はなくなった. 寂しい気
もする. *BACKWARD INCOMPATIBILITY*
Mon Sep 5 10:59:01 1994 Yukihiro Matsumoto (matz@ix-02)
* numeric.c(next): Numericクラスにもnextを提供.
* string.c(upto): uptoを提供.
* range.c(each): nextを使ったインタフェースからuptoを使うように変
更した. この方が一つのメソッドで処理をまとめで行なうことができる.
Fri Sep 2 15:25:39 1994 Yukihiro Matsumoto (matz@ix-02)
* dict.c(each): 戻り値を[key, value]のペアに変更. 今までのeachは
each_valueとして残る. *BACKWARD INCOMPATIBILITY*
Thu Sep 1 10:49:04 1994 Yukihiro Matsumoto (matz@ix-02)
* 成功した(特別な戻り値を持たない)システムコールは`0'を返すように.
Wed Aug 31 00:26:51 1994 Yukihiro Matsumoto (matz@dyna)
* string.c: チェックサムを得るメソッド`sum'を作った.
* class.c(include_class_new): ICLASSのclassをもとのクラスにした.
gcの際に元クラスをマークする必要があるのが, フィールドを増やす余
地が無いので, classフィールドを流用した. 私の見積りが間違ってい
て, ICLASSのインスタンスにメッセージを送る事があれば, おかしな動
作をするだろう.
* eval.c(masign): 式(a,b = nil)の値を[nil]からnilに変更した.
Mon Aug 29 11:56:09 1994 Yukihiro Matsumoto (matz@ix-02)
* class.c: rb_define_mfuncを無くして, メタクラスにモジュールをイン
クルードするようにした.
* error.c(yyerror): 同じ行で複数のsyntax errorをリポートしないよう
にした.
* file.c: FileTestモジュールにファイルテストメソッドを分離した.
* parse.y: 演算子を指定する時のlex_stateを正しく設定した.
Sat Aug 27 01:23:34 1994 Yukihiro Matsumoto (matz@dyna)
* parse.y: if/whileなどの複合式をprimaryに移動した. これによって例
えば「if cond then a else b end.message()」のような式が書けるよ
うになった.
Fri Aug 26 10:46:30 1994 Yukihiro Matsumoto (matz@ix-02)
* spec: 整理された文法にしたがって書き直した.
* parse.y: ここ数日で混乱していた文法を整理した. 括弧を省略したメ
ソッド呼び出しができるようになったこと, modifierが付けられるよう
になったこと, returnにリストが渡せるようになったことが主な変更点
である.
* process周りが怪しいがとにかくSolaris 2.3で動くように.
* parse.y: 曖昧性がない場合にはメソッド呼び出しの引数の括弧を省略
できるように. 省略できるメソッド呼び出しの条件は, 1)かならず1個
以上の引数を必要とすること, 2)第1引数が`+', `-', `(', `[', `{',
`/'など, 式の始まりに置かれた時と途中に現れた時とで解釈が違う記
号で始まらないこと, である.
Thu Aug 25 13:54:58 1994 Yukihiro Matsumoto (matz@ix-02)
* parse.y(cond): 条件式の展開部にbugがあった.
Wed Aug 24 00:01:15 1994 Yukihiro Matsumoto (matz@dyna)
* parse.y: returnはコンマで区切ったリストも受け取るように. つまり,
return a, b, cはreturn [a, b, c]と同じ意味になる.
* parse.y: yield以外の大域脱出制御式をexprからexpr0に移した. よっ
てメソッドの引数に制御式を使えなくなる(これで困る人はいないはず).
* parse.y: `+'の定数展開の際に演算子の優先順位を忘れていた.
* eval.c: untilの戻り値はnilになった.
* parse.y: modifierとしてのif/unless/while/untilを追加.
* parse.y: 文法からendの後ろにつけるキーワードを削除. ほとんど使わ
なかった上に, emacsではruby-modeがあれば対応のチェックが機械的に
出来るため.
Tue Aug 23 18:08:33 1994 Yukihiro Matsumoto (matz@ix-02)
* eval.c: スクリプト実行開始前に例外が発生した時にcore dumpした.
組み込み用にコードを変更した時にenbugしてしまった.
Tue Aug 23 00:07:17 1994 Yukihiro Matsumoto (matz@dyna)
* eval.c: doの戻り値がいつもnilになっていた.
* parse.y: loop制御変数の多重代入化にbugがあった.
* parse.y(expand_op): 文字列も畳み込みの対象に.
Mon Aug 22 10:50:01 1994 Yukihiro Matsumoto (matz@ix-02)
* parse.y(expand_op): `+'に関しては結合則を使って, より多く定数畳
み込みを行なうように.
* ruby.c(proc_options): argcが0の時にも対応.
* parse.y: forなどの制御変数に多重代入も使えるように.
Sat Aug 20 00:59:40 1994 Yukihiro Matsumoto (matz@dyna)
* parse.y(call_op): 演算子`~'の取り扱いをルール部へ移動.
Fri Aug 19 11:44:13 1994 Yukihiro Matsumoto (matz@ix-02)
* main.c: rubyをほかのプログラムに組み込めるようにmain()を分割した.
それにともない, プログラムの呼び出し構造を修正した.
* parse.y: 条件式の定義を変更. ifなどの条件式の中でだけ`&&'や`||'
および`!'の引数が条件式になるように. この変更により条件式以外の
場所での `&&', `||', `!'演算子の動作が直観に一致する.
* parse.y: 実引数の`*'の後に続く引数はexprに制限した. 今までは全て
の文が有効であったが, ここで定義文があってもしょうがない.
Thu Aug 18 10:21:45 1994 Yukihiro Matsumoto (matz@ix-02)
* re.c: 正規表現ルーチンの初期化部分を削除してしまっていた. これで
はemacsの正規表現になってしまう.
* version.c: copyright表示を追加.
* version.c: バージョン表示をstderrに.
* configure.in: gccがない場合testに失敗していた.
Fri Aug 12 14:12:23 1994 Yukihiro Matsumoto (matz@ix-02)
* array.c(astore): 配列の拡大する時にある程度の大きさをまとめて拡
大するように.
* io.c(Fprint): 配列に対しては一度文字列に変換することなく, 直接内
容を出力するように.
* string.c(str_new): memmoveからmemcpyへ置き換えた. これでもかなり
速度が違う.
* ruby.h: データメンバの取り出しで名前を文字列からIDで指定するよう
にした. かなりの高速化になる.
* io.c: $ARGFという変数で引数列からなる仮想ファイルをオブジェクト
として扱えるようにした. 今まではトップレベルのgets()などを使って
アクセスしていたが, どうもオブジェクト指向的ではなかった.
Thu Aug 11 11:43:15 1994 Yukihiro Matsumoto (matz@ix-02)
* gc.c: mark_location()の間違った呼び出し方の行が残っていた.
* method.c: プロトタイプ宣言が足りなかった.
Diffstat (limited to 'spec')
-rw-r--r-- | spec | 1459 |
1 files changed, 877 insertions, 582 deletions
@@ -42,10 +42,10 @@ RubyΥ֥ȻظǽˤĤƳؤ٤, 궯ϤʤȤǤ褦 Ǥ뤷, ǤʤƤRubyƥѥ뤷Ȥ߹ߥ ɲäΤưפǤ(PerlʤɤϤ뤫ưפǤ). -* Rubyδ +* Rubyʸˡ -RubyδŪʬ˾, ʸˡ㳰ʤΤǿȤˤĤΤ -ۤʤ. +ǤRubyʸˡ⤹. RubyδŪʬ˾, ʸ +ˡ㳰ʤΤǿȤˤĤΤϤۤʤ. ** @@ -54,214 +54,193 @@ RubyδŪʬ˾, ʸˡ㳰ʤΤǿȤˤĤΤ ** ڤ국 -ʸ(֤ȥڡ)Ӳ(\n)ڤ국Ȥʤ. , +ʸ(֤ȥڡ)Ӳ(\n)ڤ국Ȥʤ. +Ԥ a + b -Τ褦˹Ԥ(ʸ)ǽ, ιԤ³Ȥʾʳϲ -ʸζڤȤǧ. - -** ̻ - -ե٥åȤ`_'ǻϤޤ, ե٥å, , `_'Ǥդ¤Ӥϼ -̻ҤǤ. ̻ҤŤϤʤ. +Τ褦˹Ԥ(ʸ)ǽ, ιԤ³Ȥʾʳʸ +ڤȤƤǧ. ** ͽ ͽϰʲ̤Ǥ - break elsif module self when - case end nil super while - class ensure protect then yield - continue for redo undef __END__ - def if resque unless __FILE__ - do in retry until __LINE__ - else include return using + 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 ͽϥ饹̾, å̾, ѿ̾ʤɤѤ뤳ȤϤǤʤ. -** 롼ԥ - -ϳ̤ˤäƥ롼ԥ뤳ȤǤ. ˳ˤϼ¤Ӥ -. ¤ӤҤ, ȼζڤˤϲԤ ';' Ѥ. -¤ӤͤϺǸɾͤǤ. Ĥޤ - - (; ; ...) - -ͤϺǸɾͤˤʤ. - -** ƥ - -ʲΥƥ뤬 ϼǤ. +** - ʸƥ +RubyץǤϼʸǤ. ޤ, ⤹. - "..." # ХååβѿŸ - '...' # Хååβʤ(\\\'ϲ᤹) +*** ƥ - Хåå嵭ˡ +ץľܵҤǤ륪֥ȤƥȸƤ. RubyΥƥ +ˤʸ, ɽ, ͤȤƥ뤬. - \t (0x09) - \n ʸ(0x0a) - \r ʸ(0x0d) - \f ڡʸ(0x0c) - \b Хåڡ(0x08) - \a ٥(0x07) - \e (0x1b) - \# ʸ`#'Τ - \nnn 8ʿɽ(n0-7) - \xnn 16ʿɽ(n0-9,a-f) - \^c ȥʸ(cASCIIʸ) - \C-c ȥʸ(Ʊ) - \M-c ʸ(c|0x80) +**** ʸƥ - ɽƥ + "..." # ХååβѿŸ + '...' # Хååβʤ(\\\'ϲ᤹) - /.../ +**** Хåå嵭ˡ - ɽ + \t (0x09) + \n ʸ(0x0a) + \r ʸ(0x0d) + \f ڡʸ(0x0c) + \b Хåڡ(0x08) + \a ٥(0x07) + \e (0x1b) + \# ʸ`#'Τ + \nnn 8ʿɽ(n0-7) + \xnn 16ʿɽ(n0-9,a-f) + \^c ȥʸ(cASCIIʸ) + \C-c ȥʸ(Ʊ) + \M-c ʸ(c|0x80) - ^ Ƭ - $ - . Ǥդ1ʸ - \w ѿ. [0-9A-Za-z_]Ʊ - \W ѿ - \s ʸ. [ \t\n\r\f]Ʊ - \S ʸ - \d . [0-9] Ʊ - \D - \b 춭ʸ(ʸ饹) - \B 춭ʸ - \b (0x08)(ʸ饹) - [ ] ʸ饹 - * ľɽ0ʾη֤ - + ľɽ1ʾη֤ - {m,n} mnη֤ - ? 0ޤ1 - | - ( ) ɽޤȤ - - ¾ʸƱХåå嵭ˡͭǤ. - - ͥƥ - - 123 - -123 (Ĥ) - 1_234 (10ʿ`_'ޤळȤǤ) - 123.45 ư - 1.2e-3 ư - 0xffff 16 - 0377 8 - ?a ʸ`a'Υ(97) - ?\C-a ȥaΥ(1) - ?\M-a aΥ(225) - ?\M-\C-a -ȥaΥ(129) - - ?ɽǤƤΥХåå嵭ˡͭǤ. - -*** ѿŸ +**** ѿŸ ֥륯(`"')ǰϤޤ줿ʸɽǤ `#{ѿ̾}'Ȥ ѿƤŸ뤳ȤǤ. ѿѿ(`$',`@',`%') ľˤ`#ѿ̾'ȤǤŸǤ. ʸ`#'³ʸ -`{'Ǥʤ, ѿǤʤ, Τޤ`#'ȤƲᤵ. - -** ޥɤν - -``ǰϤޤ줿ʸ, ֥륯ȤƱͤŸ줿, Ʊ -褦˥ޥɤȤƼ¹Ԥ, μ¹Է̤ʸȤͿ. -ޥɤɾ뤿Ӥ˼¹Ԥ. +`{',`$',`@',`%'Ǥʤ, Τޤ`#'ȤƲᤵ. -** +**** ɽƥ -ϰʲηǤ. + /.../ - [ , ... ] + ^ Ƭ + $ + . Ǥդ1ʸ + \w ѿ. [0-9A-Za-z_]Ʊ + \W ѿ + \s ʸ. [ \t\n\r\f]Ʊ + \S ʸ + \d . [0-9] Ʊ + \D + \b 춭ʸ(ʸ饹) + \B 춭ʸ + \b (0x08)(ʸ饹) + [ ] ʸ饹 + * ľɽ0ʾη֤ + + ľɽ1ʾη֤ + {m,n} mnη֤ + ? 0ޤ1 + | + ( ) ɽޤȤ -줾μɾ̤ޤ֤. Ǥ0뤿 -ˤ϶ +¾ʸƱХåå嵭ˡͭǤ. - [] +**** 磻ɥɥƥ -Ѥ. + <...> -** Ϣ + * Ǥդʸ(ʸޤ)Ȱ + ? Ǥդ1ʸȰ + [ ] []Τ줫1ʸȰ + {..} {}Τ줫ʸȰ -ϢȤǤդΥ֥Ȥ(ź)ȤƻƤǤ. Ruby -ǤϢSmalltalkѸڤDict()ȤƤФ. ܺ٤ϥ -饹DictιȤ줿. ϢϢϰʲη -. +**** ͥƥ - { =>, ... } + 123 + -123 (Ĥ) + 1_234 (10ʿ`_'ޤळȤǤ) + 123.45 ư + 1.2e-3 ư + 0xffff 16 + 0377 8 + ?a ʸ`a'Υ(97) + ?\C-a ȥaΥ(1) + ?\M-a aΥ(225) + ?\M-\C-a -ȥaΥ(129) -줾μɾ̤ͤȤϢ֥Ȥ֤. -Ǥ0Ϣ뤿ˤ϶Ϣ + \ܥ ̻/ѿ̾Ȱаб. applyʤɤǥ + ɤꤹΤ˻Ȥ. - {} +?ɽǤƤΥХåå嵭ˡͭǤ. -Ѥ. +*** ޥɤν -** ѿ +RubyǤshΤ褦˥ޥɤμ¹Է̤ʸƥΤ褦˻ȤȤ +Ǥ. ``ǰϤޤ줿ʸ, ֥륯ȤƱͤ˥Хåå嵭 +ˡβѿŸԤʤ줿, ޥɤȤƼ¹Ԥ, μ¹Է +ʸȤͿ. ޥɤɾ뤿Ӥ˼¹Ԥ. -ѿˤ4ढä, μѿ̾κǽΰʸǷꤵ. -ƤʤѿȤͤnilǤ. +*** ѿ - 饹ѿ() +Rubyѿϥ(ͭϰ)ȼ̿(ͭ)ˤä4ʬव, +μѿ̾κǽΰʸǷꤵ. ̾ѿ2ʸܰʹߤ +ѿޤ`_'Ǥ뤬, ƥѿΰϡ`$'+1ʸεפȤ +ѿ. ѿ̾Ĺ˴ؤ̤¤Ϥʤ. - `%'ǻϤޤѿϥ饹ѿǤ, Υ饹ƤΥ֥饹 - 黲ȤǤ. ѿؤϥȥåץ٥, ʤ - åɤǤ٥ǤΤ߲ǽǤ. ѿϥ饹֤ - ͤͭ, ȥåɤͤѹ뤳ȤǤ - Τ,ȤѤ. +ѿΥפ˴ؤ餺, ƤʤѿȤͤnil +Ǥ. - ѿ +**** Хѿ - `@'ǻϤޤѿϥѿǤ, Υ饹ޤϥ֥ - Υåɤ黲ȤǤ. μ̿ϥ֥Ȥμ̿. +`$'ǻϤޤѿΥפϥХǤ, ץΤɤǤ +ȤǤ. μ̿ϥץμ̿. - Хѿ +**** ѿ - `$'ǻϤޤѿΥפϥХǤ, μ̿ϥץ - μ̿. +`@'ǻϤޤѿϥѿǤ, Υ饹ޤϥ֥饹 +åɤ黲ȤǤ. פϥåǤ, μ̿ϥ֥ +Ȥμ̿. - 饹̾/⥸塼̾/ѿ +**** 饹̾/⥸塼̾/ѿ - ե٥åȤޤ`_'ǻϤޤѿϼ̻ҤȤƤФ, - ѿ, 饹̾ޤϥ⥸塼̾Ǥ. +ե٥åȤޤ`_'ǻϤޤѿϼ̻ҤȤƤФ, ѿ, +饹̾ޤϥ⥸塼̾Ǥ. - ֤Ǥϼ̻Ҥϥ饹/⥸塼̾Ȥߤʤ뤬(륯 - ¸ߤʤͤnil), κդ˸줿̻Ҥ,Υ - ǤϥѿȤƸʤ, Ʊ̾Υ饹⥸塼 - . ΰ̣Ǽ̻ҤؤȤƤƯ. +֤Ǥϼ̻Ҥϥ饹/⥸塼̾Ȥߤʤ뤬(륯饹 +¸ߤʤͤnil), κդ˸줿̻Ҥ,Υ +ǤϥѿȤƸʤ, Ʊ̾Υ饹⥸塼ϱ. +ΰ̣Ǽ̻ҤؤȤƤƯ. Array # 饹 Array Array = 15 # . ʸArrayϥѿ - print(Array, "\n") # `15'Ϥ + print Array, "\n" # `15'Ϥ - ϥѥ˲ᤵ뤿, ̻Ҥؤºݤ˼ - ԤƤ, ʤƤ, ʹߤΥǤϤμ̻Ҥϥ - ѿȤߤʤ. +ȤƤβϥѥ˹Ԥʤ뤿, ̻Ҥؤ +ºݤ˼¹ԤƤ⤵ʤƤ, ʹߤΥǤϤμ̻Ҥ +ѿȤߤʤ. Array # 饹 Array if %FALSE Array = 15 # Υɤϼ¹Ԥʤ, # ʹArrayϥѿȤߤʤ. end - print(Array, "\n") # `nil'Ϥ + print Array, "\n" # `nil'Ϥ + +Υ롼ϰ츫ʣ, 饹/⥸塼̾ȥѿ̾ʣ +ʤ¤, ̤ΥѿͤnilǤȹͤƤ⺹٤Ϥ +. RubyȤ߹ߥ饹ʸΥե٥åȤǻϤޤ̾Ĥ +, 桼⥯饹/⥸塼̾ˤʸǻϤޤ뼱̻Ҥ, +ѿ̾ˤϾʸޤ`_'ǻϤޤ뼱̻ҤȤȤ侩. - Υ롼ϰ츫ʣ, 饹/⥸塼̾ȥѿ̾ - ʣʤ¤, ̤ΥѿͤnilǤȹͤƤ⺹ - ٤Ϥʤ. +ѿΥפ̿⤽Υ֥åνޤ(ȥåץ٥Υ +ѿϥץνλޤ)Ǥ. - RubyȤ߹ߥ饹ʸΥե٥åȤǻϤޤ̾ĤƤ - , 桼⥯饹/⥸塼̾ˤʸǻϤޤ뼱̻Ҥ, - ѿ̾ˤϾʸޤ`_'ǻϤޤ뼱̻ҤȤȤ侩. +**** 饹ѿ() - ѿμ̿ϤΥåɤλޤ(ȥåץ٥Υ - ѿϥץνλޤ)Ǥ. +`%'ǻϤޤѿϥ饹ѿǤ, Υ饹ƤΥ֥饹Υ +黲ȤǤ. ѿؤϥȥåץ٥, ʤ +ɤǤ٥ǤΤ߲ǽǤ. ѿϥ饹֤ͤͭ, +ȥåɤͤѹ뤳ȤǤʤΤ,Ȥ +Ѥ. -˵ѿȸƤФüѿ4Ĥ. +**** ѿ + +̾ѿʳ˵ѿȸƤФüѿ4Ĥ. self | ߤΥåɤμ¹Լ nil | Nil饹ͣΥ(ɽ) @@ -271,52 +250,99 @@ RubyδŪʬ˾, ʸˡ㳰ʤΤǿȤˤĤΤ εѿˤäƤͤѹ뤳ȤϤǤʤ. ѿؤ㳰ȯ. -** å +*** å ֥Ȥ˥åŪʹʸåǤ, δ ܷϰʲ̤Ǥ. - 1.å̾(...) + 1 '.' å̾ '(' 1... [',' '*' n ]')' - 1ɾ륪֥Ȥ, ̻Ҥǻꤵ - ɤƤӽФ. ֺǸΰ'*'³(ñ)Ǥ, - μɾ(Ǥɬפ)Ÿ, Ȥ - ɲä. +1ɾ륪֥Ȥ, ̻ҤǻꤵåɤƤ +Ф. ֺǸΰ'*'³(ñ)Ǥ, μɾ +(Ǥɬפ)Ÿ, Ȥɲä. - Ĥʤˤϳ̤άǤ. +Ĥʤˤϳ̤άǤ. å̾ȤƤǤդμ̻ҤѤ뤳ȤǤ. ѿ̾Ȥϼ̻Ҥ ֤̾㤦ΤǽʣƤʤ. -** ؿ - å, 쥷Фselfξ, 쥷Фά̾Υץ ߥˤؿΤ褦ʷǥåɤƤӽФȤǤ. ξ1ĤʤǤ̤ξάϤǤʤ. ؿǤ`@'ǻϤޤ̾ĥåɤƤӽФȤǤ. `@' ϤޤåɤϴؿǤƤӽФȤǤʤ, 륯 -ޤ, Υ֥饹餷ƤФʤΤ, ץ饤١ȥåɤ -ƤФ. ץ饤١ȥåɤC++ˤprotected member function -. +ޤϤΥ֥饹餷ƤФʤΤ, ץ饤١ȥåɤȸ +Ф. ץ饤١ȥåɤC++ˤprotected member function˳ +. -** ѡ饹ΥåɸƤӽФ +*** ѡ饹ΥåɸƤӽФ åüʥȤƥѡ饹ΥåɤθƤӽФ . ηϥåɤ˥ѡ饹Ѥ뤿 ˻Ȥ. - super + super + +ߤΥåɤͿ줿Τޤޥѥ饹Ʊ̾ΥåɤƤ +Ф. + + super'(' ... ')' + +ȤȤ˥ѡ饹Ʊ̾ΥåɤƤӽФ. ֺǸΰ +`*'³̾ΥåɸƤӽФƱͤϤ. - ߤΥåɤͿ줿Τޤޥѥ饹Ʊ̾Υ - ɤƤӽФ. +*** /Ϣ - super(...) +Υ֥Ȥ뼰ηϰʲηǤ. - ȤȤ˥ѡ饹Ʊ̾ΥåɤƤӽФ. ֺǸ - ΰ`*'³̾ΥåɸƤӽФƱͤϤ. + '[' , ... ']' -** 黻 +줾μɾ̤ޤ֤. ǿ0ζ +뤿ˤ϶ + + '[' ']' + +Ѥ. + +** Ϣ + +ϢȤǤդΥ֥Ȥ(ź)ȤƻƤǤ. Ruby +ǤϢSmalltalkѸڤDict()ȤƤФ. ܺ٤ϥ +饹DictιȤ줿. ϢϢϰʲη +. + + '{' '=>' ... '}' + +줾μɾ̤ͤȤϢ֥Ȥ֤. +ǿ0Ϣ뤿ˤ϶Ϣ + + '{' '}' + +Ѥ. + +*** , + +(Ϣޤ)ǤλȤϰʲηǹԤʤ. + + 1 '[' 2... ']' + +ηŪ, 1"[]"ȤåȲᤵ. +ưŪʥɤǵҤаʲΤ褦ˤʤ. + + 1"[]="(2) + +, Ǥ + + 1 '[' 2... ']' '=' n + +ȤǹԤʤ, + + 1."[]="(2..) + +ȤȤƲᤵ. + +*** 黻ҷ ץߥؤΤ˰ΥåɸƤӽФ湽¤ϱ黻ҷ Ȥ. Rubyˤϰʲˤ黻Ҥ. ΤΤۤɷ̤, @@ -335,68 +361,33 @@ RubyδŪʬ˾, ʸˡ㳰ʤΤǿȤˤĤΤ || .. ... :: - =() (+=, -=, ..) - yield + =() (+=, -=, ..) ۤȤɤα黻ˤϥåɸƤӽФȤƲᤵ(饹˺ Ǥ), ǤʤüʤΤ. Ǥʤü黻 Ҥ &&(), ||(), =(), ...(ϰϻ), - yield(֥åƤӽФ) -5ĤǤ. +4ĤǤ. Ǥü黻Ұʳα黻ҷϥåɸƤӽФȸʤ. ñ黻(+, -, !, ~) - 1."黻"() - -Ȥ, 2黻Ҥ + 1."黻"() - 1."黻"(2) +Ȥ, ʳ2黻Ҥ -˲ᤵ. ¿黻(λȤ[])ϱ黻ҷ̤ʷȤ + 1."黻"(2) - recv[arg..] - -, - - recv."[]"(arg..) - -Ȳᤵ. ǤؤƱͤ - - recv[arg0..] = argn - -, - - recv."[]="(arg0.., argn) - -Ȳᤵ. - -** P - -if, unless, while, untilξȽμ, ü黻`&&', `||', -`...'ξդμ, ̾黻`!'αդϾPȸƤФ. PǤʸ -ɽƥϼ$_=~ƥפξάǤȤߤʤ. -黻`...'ξդǤ$.==פξάȲᤵ. - -: 黻`!'ü黻ҤǤϤʤΤ, Ԥʤ˵Ĥ -뤳. - - ! ʸƥ - ! ɽƥ - -ηǸƤӽФåɤΰ, ƥɽ֥ȤǤϤʤ, -嵭Ӥη̤Ϳ. Τ, §Ū`!'åɤϺ -ʤɤȻפ. +˲ᤵ. ** ˤѿФ(), ץñˤ뤿Υ å奬ȤƤ. ϰʲηǤ. - ѿ = + ѿ '=' ϼɾ, ѿͤȤ. 饹⥸塼䵿ѿ ˤǤʤ. 饹⥸塼ѹ뤿ˤclassʸ, @@ -405,171 +396,207 @@ moduleʸѤ. ϱ黻ҷȤäƤ뤬, åɤǤϤʤ å奬ȤƤϰʲΤΤ. - Ǥؤ +Ǥؤ - 1[2,..] = n + 1'[' 2... ' ]' '=' n - 1ɾ륪֥Ȥ, 2鼰nޤǤȤ - , "[]="ȤåɤƤӽФ. +1ɾ륪֥Ȥ, 2鼰nޤǤȤ, "[]=" +ȤåɤƤӽФ. - ° +° - 1.̻ = 2 + 1 '.' ̻ '=' 2 - 1ɾ륪֥ȤФ"̻="Ȥ - ɤ, 2ȤƸƤӽФ. +1ɾ륪֥ȤФ"̻="Ȥåɤ, +2ȤƸƤӽФ. - + - 1 op= 2 # 1ǽǤʤФʤʤ. + 1 op= 2 # 1ǽǤʤФʤʤ. - ηŪˡּ1 = 1 op 2פŸ, ¹Ԥ. - ἰ12ɾΤ, Ѥͽۤʤ̤Ƥ - ǽ. ϥץޤΥ餹ŪΤ - ¸ߤǤ. opȤƻȤ黻Ҥ +ηŪˡּ1 = 1 op 2פŸ, ¹Ԥ. Τ +12ɾΤ, Ѥͽۤʤ̤Ƥֲǽ +. ϥץޤΥ餹ŪΤ¸ߤ +Ǥ. opȤƻȤ黻Ҥ +, -, *, /, %, **, &, |, ^, <<, >> - 11Ǥ. 黻Ҥ`='δ֤˥ڡƤϤʤ. - -*** ¿ - -ƱʣѿԤʤȤǤ. ηϰʲ̤Ǥ. +11Ǥ. 黻Ҥ`='δ֤˥ڡƤϤʤ. - ѿ, [ѿ,...] = [, ] +*** ʬ -դμĤʤ, ͤȤ(ɬפʤto_a -ɤѴ), Ǥ줾ѿ. ʳξˤ, -줾μͤѿ. դѿοȱդǤο -ʤˤʤѿˤ nil, ;äǤ̵뤵. +ͤˤäʬ뼰ϰʲ˼if, unless, caseʣʸ +3ȱ黻ҷ3ढ. RubyǤnil, ʳɾ. +CPerlʤɤȤϰۤʤ, 0 ""(ʸ)ϵȤɾʤΤǵ +뤳. - foo, bar = [1, 2] # foo = 1; bar = 2 - foo, bar = 1, 2 # foo = 1; bar = 2 - foo, bar = 1 # foo = 1; bar = nil - - foo, bar, baz = 1, 2 # foo = 1; bar = 2; baz = nil - foo, bar = 1, 2, 3 # foo = 1; bar = 2 - -** ʬ +if if 1 [then] ʸ1 - [ elsif 2 [then] + [elsif 2 [then] ʸ2 ]... - [ else + [else ʸn ] - end [ if ] + end - Ƚʸ. else if ǤelifǤʤelsififϢ³ԤʤȤ - դ뤳. +ȽǼ. 1ξʸ1ɾ. ʳξʸ2ɾ +. Rubyifelse ifǤelifǤʤelsififϢ³ԤʤȤ +դ뤳. + +unless unless 1 [then] - ʸ1 - [ else + ʸ1 + [else ʸ2 ] - end [ unless ] - - 1(nil)֤, 2ɾ㳰ȯʸ1ɾ - . - - 1 && 2 - - 1ɾ, ͤ(nilʳ)Ǥ, 2ɾ. - - 1 || 2 - - 1ɾ, ͤǤ, 2ɾ. + end - 1 ... 2 +1(nil)֤, 2ɾ㳰ȯʸ1ɾ. +ʳξʸ2ɾ. - 1ˤʤޤǤϵ֤, θϼ2֤ޤǤϿ֤. - 2ˤʤо֤ϵ +case case 0 - [ when 1 [, 2]... + [when 1 [, 2]... ʸ1 ]... - [ else + [else ʸn ] - end [ case ] + end - ʬ, CswitchPascalcase˻Ƥ. breakæФ뤳 - Ȥʸ˷³뤳ȤʤΤ. +ʬ, CswitchPascalcase˻Ƥ. breakæФ뤳Ȥ +ʸ˷³뤳ȤʤΤ. - ΰפϡּn =~ 0]ǹԤʤ. Ĥޤ, +ΰפϡּn =~ 0]ǹԤʤ. Ĥޤ, - case expr0 - when expr1, expr2 - stmt1 - when expr3, expr4 + case expr0 + when expr1, expr2 + stmt1 + when expr3, expr4 + stmt2 + else + stmt3 + end + +ϰʲifʸǤ. + + _tmp = expr0 + if expr1 =~ _tmp || expr2 =~ _tmp + stmt1 + elsif expr3 =~ _tmp || expr4 =~ _tmp stmt2 - else + else stmt3 - end + end + +黻ҷ + + 1 '&&' 2 + +1ɾ, ͤ(nilʳ)Ǥ, 2ɾ. + + 1 '||' 2 - ϰʲifʸǤ. +1ɾ, ͤǤ, 2ɾ. - _tmp = expr0 - if expr1 =~ _tmp || expr2 =~ _tmp - stmt1 - elsif expr3 =~ _tmp || expr4 =~ _tmp - stmt2 - else - stmt3 - end + 1 '...' 2 -** ֤ +1ˤʤޤǤϵ֤, θϼ2֤ޤǤϿ֤. 2 +ˤʤо֤ϵ + +*** ֤(ñ㷿) + +롼פ뼰. μͤϾnilǤ. ֥Ȥ˹ +롼פԤʤˤϼ˽Ҥ٤륤ƥ졼Ѥ. + +while while ʸ - end [ while ] + end + +郎δ, ʸ֤¹Ԥ. - 郎δ, ʸ֤¹Ԥ. +until until ʸ - end [ until ] + end 1 until 2 - (nil)֤, ɾ㳰ȯ, ʸ֤ - Ԥ. +(nil)֤, ɾ㳰ȯ, ʸ֤¹Ԥ +. + +*** PˤĤ + +if, unless, while, untilξȽμ, ü黻`...'ξ +μϾPȸƤФ. PǤʸɽƥϼ$_=~ +ƥפξάǤȤߤʤ. ˱黻`...'ξդǤ +$.==פξάȲᤵ. P˸黻 `&&', `||', `!' +դμPȤߤʤ. + +: 黻`!'ü黻ҤǤϤʤΤ, Ԥʤ˵Ĥ +뤳. P + + ! ʸƥ + ! ɽƥ + +ηǸƤӽФåɤΰ, ƥɽ֥ȤǤϤʤ, +嵭Ӥη̤Ϳ. Τ, §Ū`!'åɤϺ +ʤɤ. + +*** ƥ졼(֤) ** ƥ졼 ƥ졼Ȥ湽¤(ä˥롼)ݲΤѤåɤ +Ǥ. ɤ(֥åȸƤФ)ꤷƥƥ졼Ƥ +Ф, ƥ졼ŬͤåȤƥ֥åɾ(餯 +ʣ). ƥ졼Υ֥åθƤӽФyieldѤ(). + +ƥ졼θƤӽФϰʲιʸǹԤʤ. + +ƥ졼Ȥ湽¤(ä˥롼)ݲΤѤåɤ Ǥ. ƥ졼θƤӽФϰʲιʸǹԤʤ. - do - ʸ1 - using ѿ - ʸ2 - end [ do ] - - ʸ2פ֥åȤꤷ, ʸ1Υåɤƥ졼Ȥɾ - . ʸ1Υȥåץ٥Υåɤƥ졼ȤƸƤӽФ, - 쥷Фɽ, μϥƥ졼ȤƤϸƤӽФʤ. ʸ - 1ʣμгơƥ졼Ȥƽ˸ƤФ. - -ƥ졼yield value¹Ԥ, ͤdoʸǻꤵ줿ѿ -֥å¹Ԥ. ֥åμ¹ԤλȤͤ -yieldͤȤ֤. åɤƥ졼ȤƸƤӽФ줿 -ɤϴؿiterator_p()Τ뤳ȤǤ. ˤEnumerable⥸塼 -grepåɤΤ褦˥ƥ졼ȤƸƤФ줿̤ΥåɤȤ -ƸƤФ줿Ȥưۤʤåɤ⤢. - - for ѿ in + '{' ѿ... '|' ʸ '}' + +ʸפ֥åȤꤷ, ּפΥåɤƥ졼Ȥɾ +. ּפΥȥåץ٥Υåɤƥ졼ȤƸƤӽФ, +쥷Фɽ, μϥƥ졼ȤƤϸƤӽФʤ. ּ +ʣμޤ, ơƥ졼Ȥƽ˸ƤФ. + +ƥ졼yieldʸ¹Ԥ, ǻꤵ줿ͤdoʸǻꤵ +줿ѿ, ֥å¹Ԥ. ֥åμ¹ԤλȤ +ͤ yieldʸͤȤ֤. åɤƥ졼ȤƸƤӽ +줿ɤϥåiterator_p()ͤΤ뤳ȤǤ. ˤ +Enumerable⥸塼grepåɤΤ褦˥ƥ졼ȤƸƤФ줿 +̤ΥåɤȤƸƤФ줿Ȥưۤʤåɤ⤢. + +֥ȤγǤФԤʤηƤ. +ϰʲ̤. + + for ѿ.. in ʸ - end [ for ] + end - γǤФʸ¹Ԥ. ϰʲdoʸǤ. +γǤФʸ¹Ԥ. ϰʲμǤ. - do ().each using ѿ - ʸ - end + '{' ѿ '|' ʸ '}' + +äƼͤΥ֥Ȥåeachʤ, for¹Ԥ +㳰ȯ. + +*** ƥ졼ǤΥ֥åƤӽФ + + yield '(' [ [',' ...]]) + yield - äƼͤΥ֥Ȥåeachʤ, for¹ - 㳰ȯ. +ƥ졼ǥ֥åθƤӽФԤʤ. yield¹Ԥåɤ +ƥ졼ȤƸƤӽФƤʤˤ㳰ȯ. yield ͤϥ +åͤǤ. -** 㳰 +*** 㳰 ͽʤ֤ȯˤ㳰ȯ. RubyǤ㳰 ª, ƻԤ, Ԥʤäꤹ뤳ȤǤ. @@ -580,116 +607,212 @@ yieldͤȤ֤. åɤƥ졼ȤƸƤӽФ줿 ʸ2 ] [ ensure ʸ3 ] - end [ protect ] + end + +ʸ1¹Ԥ, μ¹㳰ȯresqueǻꤵ줿ʸ2¹ +. ensure¸ߤprotectʸλɬ(ェλ +Ǥʤ, 㳰, return, break, continue, redoʤɤˤæФǤ)ʸ3 +¹Ԥ. + +unlessʸ, untilʸϾɾ㳰ȯ, ɾ̤ +ǤȸʤΤ, ۤ㳰ԤʤäƤ뤳Ȥˤʤ. + +*** 롼ԥ + +ϳ̤ˤäƥ롼ԥ뤳ȤǤ. + + '(' ')' + +˳̤Ѥ, ʸ(ޤʸ¤)ˤ뤳ȤǤ. + + '(' ʸ ';' ʸ... ')' + +ʸ¤ӤͤϺǸɾͤǤ. ĤޤͤϺǸɾʸ +ͤˤʤ. + +** ʸ + +Rubyץ⤦ĤǤʸǤ. ʸˤñʸ, ʸ, +ʸ. ̤ʸͤѤ뤳ȤϤʤ, ȤѤ +⤢Τ, ͤ. ̾ʸͤnilǤ. + +*** + +ñʸǤ. + +*** ¿ + +ƱʣѿԤʤȤǤ. ηϰʲ̤Ǥ. + + ѿ ',' [ѿ ',' ...] ['*' ѿ]= [, ...] + +դμĤʤ, ͤȤ(ɬפʤto_a +ɤѴ), Ǥ줾ѿ. ʳξˤ, +줾μͤѿ. դѿοȱդǤο +ʤˤʤѿˤ nil, ;äǤ̵뤵. ¿ +κǸǤ`*', ĤưȤ +. + + foo, bar = [1, 2] # foo = 1; bar = 2 + foo, bar = 1, 2 # foo = 1; bar = 2 + foo, bar = 1 # foo = 1; bar = nil + + foo, bar, baz = 1, 2 # foo = 1; bar = 2; baz = nil + foo, bar = 1, 2, 3 # foo = 1; bar = 2 + foo,*bar = 1, 2, 3 # foo = 1; bar = [2, 3] + +¿ñʸǤ. ͤ(Ѵ줿)դǤ. - ʸ1¹Ԥ, μ¹㳰ȯresqueǻꤵ줿ʸ2 - ¹Ԥ. ensure¸ߤprotectʸλɬ( - ェλǤʤ, 㳰, return, break, continue, redoʤɤˤ - æФǤ)ʸ3¹Ԥ. +*** ʸ -protectʳ, unless黻, until黻Ҥϱդͤ㳰ȯ -, դͤȤƵͿ줿ȸʤΤ, ۤ㳰 -ԤʤäƤ뤳Ȥˤʤ. +ήѹʲʸ. ñʸǤ. -** æ +returnʸ - return [] + return [[, ...]] - åɤμ¹Ԥλ. +ͤͤȤƥåɤμ¹Ԥλ. 2İʾͿ줿 +ˤ, ǤȤåɤͤȤ. Ĥʤ +ˤ nil ͤȤʤ. + +롼ʸ continue redo break - 嵭3Ĥϥ롼ǻȤ. +嵭3Ĥϥ롼ǻȤ. + +continueϤäȤ¦Υ롼פμη֤Ϥ. redoϥ롼 +ΥåԤʤ鷺, ߤη֤ľ. break ϥ롼פæФ +. CȰ㤤, breakϤäȤ¦Υ롼פæФѤ, case +ȴѤϻʤ. - continueϤäȤ¦Υ롼פμη֤Ϥ. redoϥ롼 - Υ롼ΥåԤʤ鷺, ߤη֤ľ. break - ϥ롼פæФ. CȰ㤤, breakϤäȤ¦Υ롼פæФ - Ѥ, caseȴѤϻʤ. +retryʸ retry - protectʸresqueǻȤ, protectʸϤᤫ¹Ԥ. 㳰 - ԤʤäƤƻԤΤ˻Ȥ. +protectʸresqueǻȤ, protectʸϤᤫ¹Ԥ. 㳰Ԥʤ +ƤƻԤΤ˻Ȥ. resqueʳretryѤ줿㳰ȯ +. + +failʸ + + fail '(' [å] ')' + fail [å] + +㳰ȯ. åͿ줿ˤȯե +̾, ֹƥѿ`$@', å`$!'˥åȤ. + +yieldʸ + + yield [',' ...] + +ʸȤyieldѤ뤳ȤǤ. ξϼ̤dzɬפϤʤ. + +*** åɸƤӽФʸ + +1İʾĥåɤʸȤƸƤӽФˤϰ̤dzɬ +פϤʤ. ηϰʲ̤Ǥ. + + '.' å̾ 1 ',' [ 2... ][ '*' n ] + å̾ 1 ',' [ 2... ][ '*' n ] + super 1 ',' [ 2... ][ '*' n ] + +ʸϻ, Τ褦˲ǤϼȤƤβͥ褵. + + foo bar+baz # åɸƤӽФfoo(bar+baz) + foo (bar)+baz # åɸƤӽФfoo(bar) + bar + foo 1 # åɸƤӽФfoo(1) + foo -1 # ѿfoo - 1 + +åɸƤӽФʸñʸǤ. - fail([å]) * Kernel饹ΥåɤǤ. +*** 潤 - 㳰ȯ. åͿ줿ˤȯե - ̾, ֹ$@˥å$!˥åȤ. +ñʸ潤ҤղäΤʸǤ(ñʸǤϤʤ). Ҥϰ +4Ǥ. -** ƥ졼ǤΥ֥åƤӽФ + ñʸ if + ñʸ unless + ñʸ while + ñʸ until - yield +、(if/unless)μԤʸäɾ. ưб +ʬƱͤǤ. - ƥ졼ǥ֥åθƤӽФԤʤ. yield¹Ԥ - ɤƥ졼ȤƸƤӽФƤʤˤ㳰ȯ. +֤(while/until)ϤޤԤʸɾƤPɾ +Τ, ٤ʸ¹Ԥ뤳Ȥˤʤ. -** 饹 +*** 饹ʸ 饹빽ʸϰʲ̤Ǥ. - class 饹̾ [ : ѡ饹̾ ] + class 饹̾ [':' ѡ饹̾ ] - end [ class ] + end -ͤnil. 饹̾ʸǻϤޤ뼱̻ҤǤ. 饹ΥͥȤϤ -ʤΤ¾ʸǤϥ饹Ǥʤ. +饹̾Ǥդμ̻ҤǤ(ʸǻϤ뤳Ȥ侩). 饹 +ΥͥȤϤǤʤΤ¾ʸǤϥ饹Ǥʤ. -** ⥸塼 +*** ⥸塼ʸ ⥸塼빽ʸϰʲ̤Ǥ. module 饹̾ - end [ module ] + end ⥸塼̾ʸǻϤޤ뼱̻ҤǤ. 饹Ʊ, ⥸塼 ͥȤǤʤ. -** 롼 +*** 롼ʸ -饹˥⥸塼롼ɤ빽ʸϰʲ̤Ǥ. +⥸塼롼ɤ뤳Ȥˤä, 饹ޤϥ⥸塼˵ǽ +ɲäǤ. ⥸塼롼ɤ, Υ⥸塼( +Υ⥸塼뤬˥롼ɤƤ⥸塼)ƤΥåɤ +Ѥ. ̤ΤХ롼ɤϸꤵ줿¿ŷѾȤ. - include ⥸塼̾ [, ⥸塼̾...] +¾Υ⥸塼롼ɤ빽ʸϰʲ̤Ǥ. -ߤΥ饹ޤϥ⥸塼(ȥåץ٥ǤObject)˻ꤷ -⥸塼롼ɤ. ˤä¿ŷѾߥ졼ȤǤ. + include ⥸塼̾ [',' ⥸塼̾...] -** å +ߤΥ饹ޤϥ⥸塼(ȥåץ٥ǤObject饹)˻ +ꤷ⥸塼롼ɤ. + +*** åʸ ̾(ðۥåɤǤʤ)åηϰʲ̤Ǥ. ̾ ϥͥȤǤʤΤ, åʸǤϥåʸƤӸ ӽФʤ. - def å̾ [ ( [, ...][, * ] ) ] + def å̾ [ '(' [',' ...][',' '*' ] ')' ] - end [ def ] + end å̾ϼ̻ҤޤʸǤ. 黻Ҥκˤʸ ǻꤹ. ¤ӤκǸ`*', ¿Ϳ줿 °, ǸΰȤͿ(ʤˤϥ顼). -** ðۥå +** ðۥåʸ -åˤϤ⤦ðۥåɤ. ϰʲ̤Ǥ -. +åˤϤ⤦ðۥåɤ. ðۥåɤȤϤ +Υ֥Ȥ˸ͭΥåɤǤ. ϰʲ̤Ǥ. - def .å̾ [ ( [, ...][, * ] ) ] + def '.' å̾ [ '(' [',' ...][',' '*' ] ')' ] - end [ def ] + end -ηϼͤǤ륪֥Ȥðۥåɤ. ͤ +ηϼͤǤ륪֥Ȥðۥåɤ. ͤ (ӥȥ饹Ǥʤ)̾索֥Ȥ, 饹ޤϥ⥸塼Ǥ -ɬפ. ̾åȤϰۤʤ, ϥåǤ -ȤƸƤӽФȤǤ. +ɬפ. ̾åȤϰۤʤ, ðۥåɤϥå +ǤͥȤ뤳ȤǤ. -ðۥåɤΥ֥Ȥˤ°åɤǤ. ä̾ -ϷѾʤ, 㳰Ȥƥ饹ðۥåɤϤΥ֥饹ˤ -. ؤХ饹ðۥåɤ¾Υ֥Ȼظ -ˤ륯饹åɤƯ. +ðۥåɤ̾ϷѾʤ, 㳰Ȥƥ饹ðۥåɤϤ +Υ֥饹ˤѾ. ؤХ饹ðۥåɤ¾Υ +Ȼظƥˤ륯饹åɤƯ. -** åɤ̾ +*** åɤ̾ʸ ʲηǥåɤ̾Ĥ뤳ȤǤ. @@ -699,7 +822,7 @@ protectʳ, unless黻, until黻Ҥϱդͤ㳰ȯ åɤƤ, ŤåɤƤӽФ줿ΤƱƯ . -** åä +*** åäʸ åɤäˤundefѤ. @@ -708,10 +831,11 @@ protectʳ, unless黻, until黻Ҥϱդͤ㳰ȯ ̻Ҥޤʸǻꤷåɤä. defˤ̾undefˤäȤȥ饹Υե -ѥ饹Ωѹ뤳ȤǤ. , ʬȤ˥å -äƤդʤȴ¸Υåɤưʤʤǽ -. - +ѡ饹Ωѹ뤳ȤǤ. , åɤself +˥åäƤˤϤ褯դʤȴ¸Υåɤư +ʤʤǽ. + +------------------------------------------------------- * RubyȤ߹ߵǽ Rubyץߥδܤϥ饹, ⥸塼ȤΥåɤνǤ. @@ -719,8 +843,6 @@ RubyˤϽϤΤΤ˰ʲεǽȤ߹ޤƤ. 饤֥ ɤ뤳ȤˤäƵǽ뤬, ˴ؤƤϤ줾Υ饤֥ ΥɥȤȤƤ餤. -ü`+'ΤĤåɤϴؿåɤǤ. - ** ؿ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹Υåɤΰ( @@ -728,50 +850,38 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹Υåɤΰ( åɤʲˤ. Υåɤݤˤϸߴ ͤƹԤʤ٤Ǥ. - _exit(status) + + _exit(status) ץμ¹Ԥλ. statusλơȤ. exit()Ȥϰä, 㳰ʤɤϰڹԤʤʤ. fork()θ, ץλʤɤѤ. - caller + - caller(level) + - - åե졼फ, åɤθƤӽФΥե - ̾, ֹ, ǤȤ֤. levelͿ줿 - ϸߤΥåե졼levelʾξ֤. - - eof() + + eof() ޥɥ饤ϤEOFãƤ, ֤. - eval(expr) + + eval(expr) exprȤͿ줿ʸrubyץȤƲ,¹Ԥ. - exec(command) + + exec(command) ¹ԤƤץλ, commandʸǻꤵ ̥ץư. - exit([status]) + + exit([status]) ץμ¹Ԥλ. statusȤͿ줿, ͤRubyޥɤνλơȤ. ǥեȤ0. - fail([message]) + - - 㳰ȯ. åͿ줿ˤϤƥ - ѿ`$!'˥åȤ, ȯ֤ƥѿ`$@'˥åȤ. - - fork() + + fork() forkƥॳ¹Ԥ, ҥץ. ܺ٤ fork(2)ȤΤ. ƥץ¦ǤϻҥץΥץid ֤, ҥץ¦Ǥnil֤. 餫θǻҥץ ˼Ԥˤ㳰ȯ. - format(format, ...) + + format(format, ...) եޥåȤȤͿ줿ʸCsprintfƱ褦 ᤷ, Ÿʸ֤. åsprintf()̾. @@ -779,46 +889,47 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹Υåɤΰ( RubyˤformatҤγĥˤĤƤsprintf()ιȤ . - getc() + + getc() ɸϤʸФ. ͤɤ߹ʸʸ (ASCII)ɽFixnumǤ. - getenv(name) + + getenv(name) - name˳ĶѿФ. + name˳ĶѿФ. $ENV[name]Ʊ. - gets(pattern, replace) + + gets() - ȤͿ줿ե(ʤɸ)ɤ߹ - , ɤ߹ߤˤϤʸ֤. եν - ãˤnil֤. Ԥζڤϥƥѿ`$/'ˤä - ѹǤ. ɤ߹ʸϥƥѿ`$_'ˤ⥻åȤ. + ȤͿ줿ե(ʤɸ)ǹ벾 + Ūʥե($ARGFǥǤ)ɤ߹, ɤ߹ + ߤˤϤʸ֤. եνã + ˤnil֤. Ԥζڤϥƥѿ`$/'ˤäѹǤ. + ɤ߹ʸϥƥѿ`$_'ˤ⥻åȤ. - gsub() + + gsub(pattern, replace) ƥѿ`$_'λؤʸФִԤʤ. ʸ pattern˥ޥåʬreplace֤. String饹 gsubåɤβȤΤ. - iterator_p() + + iterator_p() åɤƥ졼ȤƸƤӽФ줿˿, Ǥʤ˵ ֤Ҹ. - kill(signal, pid...) + + kill(signal, pid...) pidǻꤵ줿ץ˥ʥ. ʥϥʥ 椫̾ǻꤹ. ͤĥʥ(뤤ϥʥ̾ `-')ͿȥץǤϤʤץ롼פ˥ʥ . - load(file) + + load(file) fileɤ. fileɤѥϥƥѿ$LOAD_PATH Ƿꤵ. - open(file[, mode]) + + open(file[, mode]) fileץ, File֥Ȥ֤. ե̾ϥ ե. ե̾`|'ǻϤޤˤ³ʸ @@ -860,7 +971,7 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹Υåɤΰ( ѿ`$\'(ϥեɥѥ졼)nil ǤʤͤåȤ ˤ, ǸˤϤ. - printf([port, ]format, arg1, ..., argn) + + printf([port, ]format, arg1, ..., argn) Cprintf()Ʊformat˽ʸѴ, Ϥ . 1IOΥ֥饹ΥǤäϤΥ @@ -869,7 +980,7 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹Υåɤΰ( RubyˤformatҤγĥˤĤƤsprintf()ιȤ . - rand(max) + + rand(max) 0maxۤʤϰϤȯ. ͤFixnum. @@ -880,7 +991,7 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹Υåɤΰ( ϺƥɤʤǤ. ºݤ˥ɤˤ%TRUE, ˥ɤƤˤ%FALSE֤. - select(reads[, writes[, execpts[, timeout]]]) + + select(reads[, writes[, execpts[, timeout]]]) select(2)¹Ԥ. reads/writes/execptsˤIO(ޤϤΥ 饹)ΥͿ. timeoutFixnum / Float @@ -888,17 +999,18 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹Υåɤΰ( nil, ǤʤȤ3Ǥ֤, γǤ// 㳰ԤΥ֥ȤǤȤƻ. - setenv(name, value) + + setenv(name, value) - nameǻꤵĶѿvalue˥åȤ. + nameǻꤵĶѿvalue˥åȤ. $ENV[name]=value + ƱƯ. - sleep([sec]) + + sleep([sec]) secäץμ¹Ԥߤ. secά줿, ץ SIGALRMʤ¤, ʵפ˥פ. ºݤ˥ פÿ֤. - sprintf(format, ...) + + sprintf(format, ...) formatʸCsprintfƱ褦˲ᤷ, Ÿ ʸ֤. åformat()̾. @@ -910,40 +1022,40 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹Υåɤΰ( 8 , 16ʿɽԤʤ, ονκݤ2ɽ Ϥʤ, ɽƬ`-'ĤΤɽ. - srand([]) + + srand([]) νͤꤷ, Ť֤ͤ. ͤά줿 time(3)֤ͤǥեȤȤ. - sub() + + sub(pattern, replace) ƥѿ`$_'λؤʸФִԤʤ. ʸǺ pattern˥ޥåʬreplace֤. String饹 subåɤβȤΤ. - syscall(num, arg...) + + syscall(num, arg...) numǻꤵ줿ֹΥƥॳ¹Ԥ. 2ʹߤ ƥॳΰȤϤ. ʸޤǤʤ ʤʤ. - system(command) + + system(command) ޥɤ¹Ԥ, νλơ֤. - trap(command, signal...) + + trap(command, signal...) signalγߤäcommand¹Ԥ. signalϥ - ʥ̾ʥֹ. commandȤSIG_IGNޤIGNORE - ˤϤΥʥ̵뤹(ǽʤ). SIG_DFLޤ - DEFAULTꤷϥǥեȤưԤʤ. + ʥ̾ʥֹ. commandȤ"SIG_IGN"ޤ"IGNORE" + ꤷˤϤΥʥ̵뤹(ǽʤ). "SIG_DFL" + "DEFAULT"ꤷϥǥեȤưԤʤ. - wait() + + wait() ҥץλΤԤ, λҥץpid֤. ҥץĤʤnil֤. - waitpid(pid, flags) + + waitpid(pid, flags) λҥץνλԤ, Υץλ˿ . ҥץ¸ߤʤ, Υ֥å⡼ɤǻҥץ @@ -953,7 +1065,7 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹Υåɤΰ( ** ƥѿ - $! 顼å. fail()ꤹ. + $! 顼å. failꤹ. $@ 顼ȯΥե̾ȹֹ椬 @@ -1007,7 +1119,8 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹Υåɤΰ( $ENV Ķѿ˥Ϣ(EnvDict). ѿ `for'Ԥʤѿ̾ͤΥڥͿ. - $FILENAME ؿgets()Ǹɤ߹Υե̾. + $FILENAME ۥե$ARGFǸɤ߹Υե̾. + gets()ɤǤե̾. $DEBUG `-d'ե饰ξ() @@ -1020,28 +1133,97 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹Υåɤΰ( $stdout ɸ $stderr ɸ२顼 + $ARGF (ʤɸ)ǹ벾ۥե. Ĥޤ + gets()$ARGF.gets()Ʊ̣Ǥ. + $VERBOSE `-v'ե饰ξ() $VERSION rubyΥСʸ ** ƥ - %TRUE 1(Fixnum) + %TRUE t %FALSE nil 줾쿿ͤɽ. ȽǤnil, ʳƤͤ - ȤȽǤ뤿, ֤ͤåɤ%TRUEʳͤ - Τ¸ߤΤ, ӤѤΤŬڤǤʤȤդ - Ǥ. 㤨мμϿˤʤʤ. + ȤȽǤ뤿, %TRUEͤɽŪʿͤȤʾΰ + ̣ʤ. ä, åɤͤǤȤȤ, + 줬%TRUE֤ȤȤϸ̩ˤƱǤϤʤ(ҸŪѤ + åɤͤȤ%TRUE֤褦ˤϤʤäƤ + ). Ĥޤ + + if some.method() then .. else .. end - (2 < 3) == %TRUE + - å"<"Ͽλ֤ͤΤ, ξͤ3Ǥ, - %TRUE1Ȥϰۤʤ. %FALSE˴ؤƤ, Τ褦 + if some.method() == %TRUE then .. else .. end + + ϴˤƱǤϤʤ. %FALSE˴ؤƤ, Τ褦 ʤ. ** 饹/⥸塼 +*** ARGFILE(饹) + +ǻꤵ줿ե(ͿƤʤˤɸ)ǹ +벾ۥե뤿Υ饹. Υ饹ðۥ +ɤ, ⥸塼ŪʻȤ. 饹̾Ǥʤƥ +ѿ$ARGFǤ⻲ȤǤ. + + while gets() + ... + end + + + + for $_ in $ARGF + ... + end + +Ʊ̣, Ԥ, 䤹, ƥ֥å +ΥȤΤ㴳٤. + +SuperClass: Object + +Included Modules: Enumerable + +Methods: + + each + + ƹ˷֤ƥ졼 + + each_byte + + ʸ˷֤ƥ졼 + + eof + + ɤ߹Ǥե(ۥեΤǤϤʤ) + ã˿֤. + + getc + + ۥե뤫1ʸɤ߹. ͤʸɤɽ + . եνãˤnil֤. Υåɤ + ɤ߹, ƥѿ`$.'Ѳʤ. + + gets + readline + + ۥե뤫ɤ߹, ɤ߹ߤˤϤʸ + ֤. եνãˤnil֤. Ԥζ + ϥƥѿ`$/'ˤäѹǤ. ɤ߹ʸϥ + ƥѿ`$_'ˤ⥻åȤ. + + read + + ۥեƤʸȤɤ߹. + + readlines + + ۥեɤ߹, ƹԤǤȤƻ֤. + *** Array(饹) źȤΥ饹Ǥ. ϰŪˤ``[...]'' @@ -1101,9 +1283,9 @@ Methods: 礭0ˤ. - delete(item) + delete(val) - itemȰפǤ. + valȰפǤ. delete_if @@ -1122,6 +1304,18 @@ Methods: lengthά줿νޤǤĹȤ. ꤵ줿 ʬϰϤۤϼưŪ˳ĥ. + index(val) + + valǽǤΥǥå֤. Ǥ¸ + ʤnil֤. + + indexes(ary) + indexes(index-1, ..., index-n) + + 1ܤηǤȤƼ, Ǥǥ + ȤǤޤ֤. 2ܤηǤϳưͤ + ǥåȤǤޤ֤. + join([sep]) ǤϢ뤷ʸ֤. ǤʸѴ, @@ -1129,6 +1323,7 @@ Methods: ͤѤ. length + size Ĺ(ǿ)֤. @@ -1241,7 +1436,9 @@ Methods: 饹Υ饹. 긷̩ȥ饹ðۥåɤѾ뤿 , 줾饹ȸƤФ̾Τʤ饹饹Ȥƻ, ClassϤΥ饹Υ饹Ǥ(ʬä?). , β⤬ -ǤʤƤ, RubyȤȤ˲λپʤ. +ǤʤƤ, RubyȤȤ˲λپʤ. 饹ˤðۥåɤ +Ǥ, ѡ饹줿ðۥåɤϤΥ֥饹 +ǤͭǤΤнʬǤ. SuperClass: Module @@ -1260,12 +1457,16 @@ Methods: *** Comparable(⥸塼) - ӱ黻饹ΤMixin. Υ⥸塼롼ɤ뤳 - Ȥˤä, `<=>'¾α黻ҤϤѤ - . +ӱ黻饹ΤMixin. Υ⥸塼롼ɤ뤳 +Ȥˤä, `<=>'黻Ҥ¾α黻ҤϤѤ +Ǥ. Methods: + self == other + + selfother֤. + self > other selfother礭֤. @@ -1291,7 +1492,7 @@ Methods: NDBMե륯饹. , ǡȤʸǤʤФ ʤȤ¤, ǡե¸ȤƤ Dict饹Ʊͤ˰ȤǤ. NDBMƤʤƥǤ -Υ饹ؤΥ㳰ȯ. +Υ饹ʤ. SuperClass: Object @@ -1326,6 +1527,10 @@ Methods: ɾͤλ, ܤ. each + each_pair + + [key, value]ʤͿ륤ƥ졼. + each_value ƤvalueФƷ֤ƥ졼. @@ -1334,12 +1539,8 @@ Methods: ƤkeyФƷ֤ƥ졼. - each_pair - - [key, value]ʤͿ륤ƥ졼. - - includes(key) has_key(key) + includes(key) keyǡ١¸ߤ, ֤ @@ -1348,11 +1549,19 @@ Methods: valueͤȤȤǡ١¸ߤ, ֤ + indexes(ary) + indexes(key-1, ..., key-n) + + 1ܤηǤʸȤƼ, Ǥ + ȤǤޤ֤. 2ܤηǤϳưͤ + Ǥޤ֤. + keys ǡ١¸ߤ륭Ƥޤ֤. length + size ǡ١Ǥο֤. (:ߤμ¸Ǥǿ 뤿˥ǡ١Τ, 빽Ȥ⤤. @@ -1422,8 +1631,8 @@ Methods: [key, value]ʤͿ륤ƥ졼. - includes(key) has_key(key) + includes(key) key¸ߤ, ֤ @@ -1431,11 +1640,19 @@ Methods: valueͤȤȤ¸ߤ, ֤ + indexes(ary) + indexes(key-1, ..., key-n) + + 1ܤηǤȤƼ, ǤȤ + Ǥޤ֤. 2ܤηǤϳưͤȤ + ޤ֤. + keys ¸ߤ륭Ƥޤ֤. length + size Ǥο֤. @@ -1539,7 +1756,7 @@ Methods: grep(pattern) - pattern =~ ǡפΩƤǤޤ֤. + =~ patternפΩƤǤޤ֤. 졼ȤѤ줿Ͼ嵭ξΩǤФƥ֥ ¹Ԥ. @@ -1555,13 +1772,13 @@ Methods: min - ǾǤ֤. Ǥ`<=>'åɤĤȤۤΤ - ˲ꤷƤ. + ǾǤ֤. ƤǤߤ`<=>'åɤӤǤ + 뤳ȤꤷƤ. max - Ǥ֤. Ǥ`<=>'åɤĤȤۤΤ - ˲ꤷƤ. + Ǥ֤. Ǥ`<=>'åɤӤǤ뤳Ȥ + Ƥ. reverse @@ -1626,7 +1843,7 @@ Single Methods: gecos # gecosե(ʸ) dir # ۡǥ쥯ȥ(ʸ) shell # (ʸ) - # ʹߤΥФϥƥˤäƤϤʤΤ⤢ + # ʹߤΥФϥƥˤäƤʤ. change # ѥѹ() quota # () age # () @@ -1673,9 +1890,9 @@ Single Methods: *** File(饹) -ե륢ΤΥ饹. ؿåopen(). ޤ, -Υ饹ðۥåɤȤtestΥեƥȱ黻Υå -Ƥ. +ե륢ΤΥ饹. åopen(). ޤ, +饹ðۥåɤȤtestΥեƥȱ黻Υåɤ +Ƥ(FileTest⥸塼Υåɷ). SuperClass: IO @@ -1693,7 +1910,7 @@ Methods: եΥѡߥåѹ(cf chmod(2)). - chmod(owner, group) + chown(owner, group) եνͭԤȥ롼פѹ(cf chown(2)). nil-1 ꤹ뤳ȤˤäƽͭԤ䥰롼פߤΤޤѤʤǤ @@ -1707,7 +1924,7 @@ Methods: ե˴ؤStat¤Τ֤. lstatϥե뤬ܥ ǤХΤΤ˴ؤStat¤Τ֤. ¤ - ƤˤĤƤstat ȤΤ. + ƤˤĤƤstatȤΤ. mtime @@ -1727,7 +1944,7 @@ Methods: 0, 1, 2Τ줫Ǥä, 줾եƬ, ߰, եνüΤΤ줫Ф. - stat() + stat ե˴ؤStat¤Τ֤(Struct ). @@ -1765,29 +1982,85 @@ Single Methods: filenameκǽ֤. - b(filename) - - filenameΥե뤬֥åڥեǤ, - . - - c(filename) - - filenameΥե뤬饯ڥեǤ, - ֤. - ctime(filename) filenameκǽơѹ֤. chmod(mode, path, file...) - եΥѡߥåѹ(cf chmod(2)). + եΥѡߥåѹ(cf chmod(2)). ѹե + ֤. chown(owner, group, file...) եνͭԤȥ롼פѹ(cf chown(2)). nil-1 ꤹ뤳ȤˤäƽͭԤ䥰롼פߤΤޤѤʤǤ - ȤǤ. + ȤǤ. ѹե֤. + + link(old, new) + + oldؤΥϡɥnew. link(2)Ʊ¤. + + mtime(filename) + + filenameκǽ֤. + + readlink(path) + + ܥåpathƤʸȤ֤. + + rename(from, to) + + ե̾fromtoѹ. rename(2). toȤ̾ + Υե뤬¸ߤˤϤޤΥե뤬. + + stat(filename) + + filenameΥեStat¤Τ֤. + + symlink(old, new) + + oldؤΥܥånew. + + truncate(path, length) + + pathǻꤵ줿եڤΤƤƺlengthХȤˤ. + + type(filename) + + filenameΥեΥפɽʸ֤. ʸ"file", + "directory", "characterSpecial", "blockSpecial", "fifo", + "link", "socket"ΤΤ줫ĤǤ. + + unlink(file...) + + ե. ǥ쥯ȥκˤDir.rmdirȤ. + + utime(atime, mtime, file...) + + եΥatime, mtimeꤹ. + atime, mtimeϿޤTime饹ΥǤʤФʤ + . + + ʳFileTest⥸塼ΥåɤðۥåɤȤƻ. + +*** FileTest(⥸塼) + +եƥѥåɤ⥸塼. 롼ɤѤ뤳 +Ǥ. + +Methods: +Single Methods: + + b(filename) + + filenameΥե뤬֥åڥեǤ, + . + + c(filename) + + filenameΥե뤬饯ڥեǤ, + ֤. executable(filename) x(filename) @@ -1829,14 +2102,6 @@ Single Methods: filenameΥե뤬åȤǤ, ֤. - link(old, new) - - oldؤΥϡɥnew. link(2)Ʊ¤. - - mtime(filename) - - filenameκǽ֤. - owned(filename) O(filename) @@ -1847,15 +2112,6 @@ Single Methods: filenameΥեɤߤȤǽλ, ֤. - readlink(path) - - ܥåpathƤʸȤ֤. - - rename(from, to) - - ե̾fromtoѹ. rename(2). toȤ̾ - Υե뤬¸ߤˤϤޤΥե뤬. - R(filename) filenameΥեuid/gidɤߤȤǽλ, ֤. @@ -1881,24 +2137,6 @@ Single Methods: filenameΥեstickyӥåȤåȤƤ, ֤. - symlink(old, new) - - oldؤΥܥånew. - - truncate(path, length) - - pathǻꤵ줿եڤΤƤƺlengthХȤˤ. - - unlink(file...) - - ե. ǥ쥯ȥκˤDir.rmdirȤ. - - utime(atime, mtime, file...) - - եΥatime, mtimeꤹ. - atime, mtimeϿޤTime饹ΥǤʤФʤ - . - writable(filename) w(filename) @@ -2002,7 +2240,7 @@ Methods: coerce(num) numfloatѴ. FloatǤ¾ο - FixnumǤ. + FixnumBignumǤ. to_f @@ -2010,7 +2248,7 @@ Methods: to_i - floatѴ̤֤. + selfѴ̤֤. Single Methods: @@ -2024,13 +2262,9 @@ RubyȤ߹ߤgarbage collectorԤʤΥ⥸塼. Υ 塼ΥåɤѤ뤳Ȥˤä, ŪGCߤ, GCε 륿ߥ椷Ǥ. -gcϻϤޤˤΥ⥸塼start_hookåɤ, äˤ -end_hookåɤƤӽФ, åɤ뤳Ȥˤä -hook뤳ȤǤ. - Methods: - garbage_collect + + garbage_collect GCϤ. GC.startפƱ. @@ -2048,6 +2282,33 @@ Single Methods: GCϤ. +*** Glob(饹) + +磻ɥɤΥ饹. 磻ɥɤΥƥ<...>ȤǤ +. ɽȤۤƱ褦˻Ȥ뤬, ϵǽʤ. , +ɥɤŸǽ. + +SuperClass: Object + +Included Modules: Enumerable + +Methods: + + self =~ string + + 磻ɥɤʸ˥ޥåˤϿ, ʤ + nil֤. + + each + + 磻ɥɤ˥ޥåե֤̾ƥ졼. + +Single Methods: + + new(string) + + ʸ磻ɥɤѴ֥Ȥ֤. + *** Integer(饹) 饹. ºݤϤ礭ˤäFixnumBignumĤΥ֥饹 @@ -2096,7 +2357,7 @@ Methods: : - $stdout << 1 << " is a " << Fixnum + $stdout << 1 << " is a " << Fixnum << "\n" close @@ -2115,6 +2376,7 @@ Methods: FixnumǤ. fileno + to_i IO֥ȤȤäƤեǥץ(Fixnum)֤. @@ -2125,7 +2387,7 @@ Methods: getc ɤ߹, ɤ߹ߤˤϤʸ֤. ե - νãˤnil֤. ؿŪåɤgetc() + νãˤnil֤. ͥågetc() $stdin.getcƱ̣Ǥ. gets @@ -2146,6 +2408,10 @@ Methods: lengthХɤ߹, ʸ֤. lengthά줿 ˤ, ƤΥǡɤ߹. + readlines + + եɤ߹dzƹԤǤȤƤ֤. + sync ߤνƱ⡼ɤ֤ͤ. Ʊ⡼ɤλϽϴ @@ -2158,16 +2424,17 @@ Methods: sysread(length) stdioͳread(2)ѤϤԤʤ. Ϥ줿ǡ - ޤʸ֤. եνãˤnil֤. + ޤʸ֤. եνãˤnil֤. read(2)ˤɬlengthХȤʸɤ߹ޤ櫓 ǤϤʤ. gets()getc()ʤstdioͳåɤȺѤ - ȤϥХåեʤɤ, פư뤳Ȥ. + ȤϥХåեʤɤǻפư뤳Ȥ. syswrite(str) - stdioͳ, wirte(2)ѤƽϤԤʤ. Υå - ϥХåեʤstdioƤ뤳ȤϰڹԤʤʤ. - print()printf()syswrite()ѤΤϿ侩Ǥʤ. + stdioͳ, write(2)ѤƽϤԤʤ. Υå + ϥХåեʤstdioƤ뤳ȤϰڹԤʤʤ. + syswriteϼºݤ˽Хȿ֤. print()printf() + syswrite()ѤΤϿ侩Ǥʤ. write(str) @@ -2179,14 +2446,14 @@ Single Methods: printprintfΥǥեȤν֤. ͤ$stdout. - default= + default=(io) ǥեȤνꤹ. *** Kernel(饹) -ƤΥ饹δ쥯饹. RubyȤ߹ߤƤδؿŪåɤϤΥ -饹Ƥ. +ƤΥ饹δ쥯饹. RubyȤ߹ߤƤδؿŪ˸ƤФå +ϤΥ饹Ƥ. SuperClass: ʤ @@ -2197,8 +2464,8 @@ Methods: . Non-nilΥ֥Ȥξ˵(nil)֤. Υ ɤNil饹ǤϺ쿿֤. - equal(other) self == other + equal(other) ֥ȤΰȽ. 쥷ФȰΰפ, ֤. Kernel饹ǤΥ֥ȤƱλ @@ -2217,13 +2484,13 @@ Methods: self =~ other - ޥå. ǥեȤ"=="ƱǤ. "=~"caseӤˤѤ - . + ޥå. ǥեȤư"=="ƱǤ. "=~"caseӤ + Ѥ. !~ - "=~". "=~"åɤƤӽФƤΤ, - ɬפϤʤ. + "=~". "=~"åɤƤӽФƤΤ, Ϻ + ɬפϤʤ. self :: other @@ -2254,7 +2521,7 @@ Methods: ֥ȤΥϥå(Fixnum)֤. Dict饹ǥȤʤ ֥ȤǼΤѤƤ.A == BפΩ ɬA.hash == B.hashפΩɬפΤ, "==" - ˤϤ⤽˹碌ƺ뤳. + ˤɬ⤽˹碌ƺ뤳. *** Math(⥸塼) @@ -2309,7 +2576,7 @@ SuperClass: Object Methods: - attr(name[, public]) + + attr(name[, public]) Υ⥸塼롼ɤ饹ΥФ nameǻꤵ°ղä, °Ф륢åɤ @@ -2390,6 +2657,10 @@ Methods: Ⱦ;2Ǥ֤. + next + + ο֤. οȤϤοۤǾǤ. + *** Object(饹) Ƥ̾說饹Υѥ饹. Υ饹Υ֥饹Ǥʤ饹 @@ -2410,9 +2681,9 @@ Methods: clone - ֥Ȥʣ. FixnumʳΥ饹ξ, 餯 - obj.eqaul(obj.clone)פϵǤ뤬, ¿ξobj == - obj.cloneפϿǤ. + ֥Ȥʣ. ¨ͤǤFixnum饹 + ʳΥ饹ξ,obj.equal(obj.clone)פϵǤ뤬, ¿ + ξobj == obj.cloneפϿǤ. to_s @@ -2587,7 +2858,7 @@ Single Methods: ɽΥ饹. ɽΥƥ/.../Ȥɽ, ưŪ 뤿ˤ - Regexp.compile(ʸ) + Regexp.new(ʸ) Ȥ. , String饹`=~'ϤȤ¿Υåɤɽ ؤʸͿ줿ˤŪɽΤ, @@ -2598,7 +2869,6 @@ SuperClass: Object Methods: - self =~ string ɽʸ˥ޥå, ޥå֤֤. ޥå @@ -2611,6 +2881,7 @@ Methods: Single Methods: complie(string) + new(string) ʸɽѴ֥Ȥ֤. @@ -2646,7 +2917,7 @@ Methods: åȤΰʹߤ³λ. how0Ǥ, ʹߤμ, how1Ǥ, ʹߤݤ. how2λˤ, - ʹߤ, Ȥ˵ݤ. + ʹߤ, Ȥ˵ݤ. shutdown(2). *** String(饹) @@ -2758,47 +3029,28 @@ Methods: Ѵ. length + size ʸĹ(Хȿ)֤. next - ּΡʸ֤. ʸȤϿϿȤ,ʸ - ʸȤä, 夬νԤʤ줿ԤǤ. - - "aa".next == "ab" - "99".next == "100" - "a9".next == "b0" - - ΥåɤRange:eachѤƤΤ, ʲΤ褦ʽ - ǽǤ. - - for i in "a" .. "ba" - print(i, "\n"); - end - - a, b, c, .. aa, .. az, baޤǤƹԤ˽Ϥ. - - - դʤФʤΤ, νλȽ羮طǤϤʤ - `=='ȽꤵƤ뤿, `..'黻Ҥκդͤ³ʸ˱ - դʸޤޤƤʤ, ʲΤ褦ʾ̵¥롼פ - ٤äƤޤ. - - for i in "0" .. "1a" - print(i, "\n"); - end + selfendޤǡּΡʸ֤. ʸȤϿϿ + Ȥ,ʸϱʸȤä, 夬νԤʤ줿 + ΤǤ. - ԤϤȤˤäǤƨƤ褦ȤƤȹͤ - ⤤뤫⤷ʤ. ο¬. + "aa".next => "ab" + "99".next => "100" + "a9".next => "b0" oct ʸ8ʿɽʸȲᤷ, Ѵ. 8ʿ - /[0-7]+/Ǥ, ƤϤޤʤʸФƤ - 0֤. perlȤϰäʸ0xϤޤäƤ뤫Ȥä - 16ʿȸʤƤ줿Ϥʤ. 8ʿǤϤʤΤ0 - ֤. + /[0-7]+/Ǥ, ʸƬ餳Υѥ˥ޥå + ʬѴ. ƤϤޤʤʸФ + Ƥ0֤. perlȤϰäʸ0xϤޤäƤ뤫Ȥ + 16ʿȸʤƤ줿Ϥʤ. Ƭ08ʿ + ǧ, 0֤. reverse @@ -2844,6 +3096,16 @@ Methods: Ƥ֤. sub()gsub()Ȱۤʤ, ǽΥޥå ִ. + sum([bits]) + + ʸbitsӥåȤΥå. άͤ16Ǥ. ruby + ǤϰʲΥɤSystem V`sum'ץƱͤ. + + while gets() + sum += $_.sum + end + sum %= 65536 + to_f ʸFloatѴ. @@ -2918,6 +3180,36 @@ Methods: X 1Хȸ @ а֤ؤΰư + rubyunpackperlȰäƥåηǽʤȤ + դ뤳. + + upto(end) + + selfϤޤä, endޤǡּΡʸͿ륤ƥ졼. + ʸȤstr.nextͿʸǤ. + + ΥåɤRange:eachѤƤΤ, ʲΤ褦ʽ + ǽǤ. + + for i in "a" .. "ba" + print(i, "\n"); + end + + a, b, c, .. aa, .. az, baޤǤƹԤ˽Ϥ. + + + դʤФʤΤ, νλȽ羮طǤϤʤ + `=='ȽꤵƤ뤿, `..'黻Ҥκդͤ³ʸ˱ + դʸޤޤƤʤ, ʲΤ褦ʾ̵¥롼פ + ٤äƤޤ. + + for i in "0" .. "1a" + print(i, "\n"); + end + + ԤϤȤˤäǤƨƤ褦ȤƤȹͤ + ⤤뤫⤷ʤ. ο¬. + Single Methods: new(string) @@ -2930,20 +3222,24 @@ Single Methods: ǡޤȤˤ饹Ѥ뤳Ȥ⤢뤬(: select), ¤ΤȤ٤ϰʲΤ褦ʾǤ. - (1) Ǥο¿ + (1) Ǥο + + ǤοưΤϹ¤ΤȤΤˤϸʤ. + + (2) Ǥο¿ ʹ֤٤ưפ˰복ǰο7ĤޤǤǤȤ⤬. - β˽, ǡ4İʾξѤ, - *2(ĤޤꥪեåȤȤΰ̣)7ۤ. ä, Τ褦 - ˤϹ¤ΤȤä䤹Ȼפ. + β˽, Ǥ4İʾ夢ǡξѤ + , ǿ*2(ĤޤꥪեåȤȤΰ̣)7ۤ. ä, + Τ褦ʾˤϹ¤ΤȤä䤹Ȼפ. - (2) Ʊ̤ʤ + (3) Ʊ̤ʤ - ¤Τ㴳Ȥ⤤Τ, ®٤ˤʤ - ˤ, (Ʊ̤ʤ)Ϲ¤ΤλѤŬڤǤʤ + ¤Τ㴳Ȥ⤤Τ, ®٤ˤʤ + (㤨Ʊ̤ʤ)Ϲ¤ΤλѤŬڤǤʤ ǽ. -ƹ¤Τˤϥ̾Ʊ̾ΰΤʤåɤƤ. +ƹ¤Τˤϥ̾Ʊ̾ΰΤʤåɤ. ܥɥ, ¤Τɽ뤿ˤϰʲηȤ. @@ -3079,8 +3375,7 @@ Included Modules: Comparable Methods: - self == other - self > other + self <=> other otherTimeΥ. Ϳ줿 ˤ1970ǯ 1 1 00:00:00 GMTÿǤ @@ -3107,7 +3402,7 @@ Methods: localtime ॾνԤʤä(ǥե). localtime - ⼫ʬȤ֤. + ϼʬȤ֤. to_i tv_sec |