summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorYukihiro Matsumoto <matz@ruby-lang.org>1995-02-21 18:56:56 +0900
committerTakashi Kokubun <takashikkbn@gmail.com>2019-08-17 22:09:31 +0900
commit2f106ab85c4f4e171374aee261f5a12bdd923c41 (patch)
tree6810f0a05ad8df30a269eb522eea5f77186b90c6 /spec
parentc080fb6d10bbcb697b6ba16e640de8db3f1973d0 (diff)
version 0.67v0_67
https://cache.ruby-lang.org/pub/ruby/1.0/ruby-0.66-0.67.diff.gz Tue Feb 21 18:56:56 1995 Yukihiro Matsumoto (matz@ix-02) * io.c(STDIN, STDOUT, STDERR): 定数として定義.今までの$stdinなど は将来なくなるかも知れない. * io.c(select): bug fix. * version 0.67 Mon Feb 20 16:10:14 1995 Yukihiro Matsumoto (matz@ix-02) * parse.y(yylex): 定数を`%識別子'から,第1文字が大文字の識別子に変 更.それにともないクラスは定数となった. * eval.c: クラス定義内のselfがクラス定義外部のthe_classだった. * variable.c(rb_name_class): クラス名をインスタンス変数に格納する. Thu Feb 16 15:36:17 1995 Yukihiro Matsumoto (matz@ix-02) * parse.y: BLOCKをbraceで表現する文法に変更したものを作ってみる. MLに提示してみるが反応がない. * object.c(do,forever): なくした. Wed Feb 15 13:20:49 1995 Yukihiro Matsumoto (matz@ix-02) * re.c(new): 第2引数が与えられて,かつnilでないときだけ設定するよ うに(以前はnilの時にも設定を行なっていた). * parse.y(parse_regexp): 正規表現リテラルで大文字小文字を無視する かどうか指定できるように. Tue Feb 14 00:55:33 1995 Yukihiro Matsumoto (matz@dyna) * parse.y: (compexpr) -> (expr). Fri Feb 10 16:30:00 1995 Yukihiro Matsumoto (matz@ix-02) * ruby.c(load_file): scriptを読み込む時だけ"#!"の解析を行うように. * ruby.c(readin): ファイル読み込み時に先頭に"#!"があり,rubyに引数 が与えられていれば,その引数も有効になる. * parse.y(yylex): コメント行の終りが`\'であった時,次の行に継続し ているとみなすようにした.
Diffstat (limited to 'spec')
-rw-r--r--spec218
1 files changed, 94 insertions, 124 deletions
diff --git a/spec b/spec
index fb5d04659e..42849d503b 100644
--- a/spec
+++ b/spec
@@ -54,9 +54,10 @@ tab) CR(carriage return)(form feed)Ǥ롥(newline)
̻ҤŤϤʤߤμϼ̻ҤȤƥޥХȥ
(EUC,SJIS)̤ʤ
-Хѿ̾"$"³̻Ҥޤϵ1ʸ󥹥ѿ
-"@"³̻ҡ饹"%"³̻ҤǤ롥᥽å̾
-ѿ̾ȥ饹̾ñʤ뼱̻ҤѤ롥
+Хѿ̾"$"³̻Ҥޤϵ1ʸ󥹥ѿ
+"@"³̻ҡˤʸǻϤޤ뼱̻ҡѿ̾Ͼʸ
+ǻϤޤ뼱̻ҤǤ롥᥽å̾ˤñʤ뼱̻ҤѤ(᥽å̾
+ʸǤ⾮ʸǤϤ)
**
@@ -126,12 +127,15 @@ RubyǤnilʳɾ롥CPerl ʤɤȤϰۤʤꡤ0
\M-c ᥿ʸ(c|0x80)
\ʳ ʸΤ
+ʸ󼰤󿷤ʸ󥪥֥ȤΤǡʸƤ
+ƤȤȤʸѤʤ
+
ѿŸ
֥륯(`"')ǰϤޤ줿ʸɽǤ `#{ѿ̾}'Ȥ
-ѿƤŸ뤳ȤǤ롥ѿѿ(`$',`@',`%')
- ǻϤޤˤ`#ѿ̾'ȤǤŸǤ롥ʸ`#'³ʸ
- `{',`$',`@',`%'ǤʤСΤޤ`#'ȤƲᤵ롥
+ѿƤŸ뤳ȤǤ롥ѿѿ(`$',`@')ǻ
+ޤˤ`#ѿ̾'ȤǤŸǤ롥ʸ`#'³ʸ
+`{',`$',`@'ǤʤСΤޤ`#'ȤƲᤵ롥
** ޥɽ
@@ -142,7 +146,7 @@ RubyǤshΤ褦˥ޥɤμ¹Է̤ʸƥΤ褦˻ȤȤ
** ɽ
- /.../
+ /.../[i]
^ Ƭ
$
@@ -164,7 +168,8 @@ RubyǤshΤ褦˥ޥɤμ¹Է̤ʸƥΤ褦˻ȤȤ
|
( ) ɽޤȤ
-¾ʸƱХåå嵭ˡѿŸͭǤ롥
+¾ʸƱХåå嵭ˡѿŸͭǤ롥ɽ
+θiĤˤʸʸΰ㤤̵뤹롥
** 磻ɥɼ
@@ -226,57 +231,32 @@ Rubyѿϥ(ͭϰ)ȼ̿(ͭ)ˤä4ʬव졤
᥽åɤ黲ȤǤ롥פϥ᥽åǤꡤμ̿ϥ֥
Ȥμ̿
-*** 饹̾/⥸塼̾/ѿ
+*** 饹
:
- Array
- Math
- foobar
+ FOOBAR
-ե٥åȤޤ`_'ǻϤޤѿϼ̻ҤȤƤФ졤ѿ
-饹̾ޤϥ⥸塼̾Ǥ롥
+ʸǻϤޤ뼱̻ҤϤϥ饹ؤΥǤꡤΥ饹
+Υ֥饹Υ󥹥󥹤黲ȤǤ롥ؤϥȥåץ٥롤
+ʤ᥽åɤǤ٥ǤΤǽǤ롥ѿϥ饹
+֤ͤͭ졤ͤѹ뤳ȤǤʤ饹
+μ̿ϥ饹μ̿
-֤Ǥϼ̻Ҥϥ饹/⥸塼̾Ȥߤʤ뤬(륯饹
-¸ߤʤͤnil)κդ˸줿̻ҤϡΥ
-ǤϥѿȤƸʤ졤Ʊ̾Υ饹⥸塼ϱ롥
-ΰ̣Ǽ̻ҤؤȤƤƯġ
+饹ϼưŪΤǡ饹̾Ǥ롥
- Array # 󥯥饹 Array
- Array = 15 # ʸArrayϥѿ
- print Array, "\n" # `15'Ϥ
+*** ѿ
-ȤƤβϥѥ˹Ԥʤ뤿ᡤ̻Ҥؤ
-ºݤ˼¹ԤƤ⤵ʤƤ⡤ʹߤΥǤϤμ̻Ҥ
-ѿȤߤʤ롥
+:
- Array # 󥯥饹 Array
- if %FALSE
- Array = 15 # Υɤϼ¹Ԥʤ
- # ʹArrayϥѿȤߤʤ롥
- end
- print Array, "\n" # `nil'Ϥ
+ foobar
-Υ롼ϰ츫ʣ饹/⥸塼̾ȥѿ̾ʣ
-ʤ¤ꡤ̤ΥѿͤnilǤȹͤƤ⺹٤Ϥ
-RubyȤ߹ߥ饹ʸΥե٥åȤǻϤޤ̾Ĥ
-ꡤ桼⥯饹/⥸塼̾ˤʸǻϤޤ뼱̻Ҥ򡤥
-ѿ̾ˤϾʸޤ`_'ǻϤޤ뼱̻ҤȤȤ򶯤侩롥
+ʸޤ`_'ǻϤޤ뼱̻ҤϥѿؤΥǤ롥
+ʤѿͤnilǤ
-ѿΥפ̿⤽Υ֥åνޤ(ȥåץ٥Υ
+ѿΥפϼ̿⤽Υ֥åνޤ(ȥåץ٥Υ
ѿϥץνλޤ)Ǥ롥
-*** 饹
-
-:
-
- %foobar
-
-`%'ǻϤޤѿϥ饹ǤꡤΥ饹ƤΥ֥饹Υ
-󥹤黲ȤǤ롥ؤϥȥåץ٥롤ʤ᥽åɤ
-Ǥ٥ǤΤǽǤ롥ѿϥ饹֤ͤͭ졤
-ͤѹ뤳ȤǤʤ
-
*** ѿ
̾ѿʳ˵ѿȸƤФüѿ4Ĥ롥
@@ -300,14 +280,6 @@ Rubyѿϥ(ͭϰ)ȼ̿(ͭ)ˤä4ʬव졤
`(' `)'
-̤ˤñʤ뼰ǤϤʤ¤(ץ)֤Ȥ
-롥
-
- `(' `;' .. `)'
-
-¤ӤͤϺǸɾͤǤ롥ĤޤͤϺǸɾ
-ͤˤʤ롥
-
**
:
@@ -365,10 +337,13 @@ Rubyѿϥ(ͭϰ)ȼ̿(ͭ)ˤä4ʬव졤
åǡ쥷Фselfξ硤쥷Фά̾Υץ
ߥ󥰸ˤؿΤ褦ʷǥ᥽åɤƤӽФȤǤ롥
-᥽åɸƤӽФǤۣ椵ʤˤϳ̤άǤ롥ۣ椵
-ȤʲʸޤͽǻϤޤǤ롥
+᥽åɸƤӽФΰμγ̤άǤ뤬Ȥʤ뼰
+ʸޤͽǻϤޤϡ̤ͥδطͽ̤η̤
+ʤ礬롥
- (, [, {, <, /, %, +, -, if, while
+ (, [, {, <, /, +, -, if, while
+
+ɤΤ褦ɾ뤫ۣʾˤϳ̤Ĥ
foo bar+baz # ᥽åɸƤӽФfoo(bar+baz)
@@ -416,31 +391,31 @@ Rubyѿϥ(ͭϰ)ȼ̿(ͭ)ˤä4ʬव졤
foo[0] = bar
foo.bar = baz
-ˤѿФ()ȡץñˤ뤿Υ
-å奬ȤƤ롥ϰʲηǤ롥
+ѿʤɤͤꤹ뤿Ѥ롥ϱ黻ҷȤ
+Ƥ뤬᥽åɤǤϤʤΤǺ뤳ȤϤǤʤդˤʤ뤳
+Τϰʲ3μǤ롥
- ѿ `='
+ѿ(`$'̻ | `@'̻ | ̻)
-ϼɾѿͤȤ롥饹⥸塼䵿ѿ
-ˤǤʤ饹⥸塼ѹ뤿ˤclass
-moduleѤ롥ϱ黻ҷȤäƤ뤬᥽åɤǤϤʤ
-Ǻ뤳ȤϤǤʤ
+ ѿ `='
-󥿥å奬ȤƤϰʲΤΤ롥
+ѿؤϱդμɾ줿ͤդǻꤵ줿ѿ
+롥
-Ǥؤ
+󻲾([..])
1`[' 2.. `]' `=' n
-1ɾ륪֥Ȥˡ2鼰nޤǤȤơ"[]="
-Ȥ᥽åɤƤӽФ
+󻲾ȼؤϡ1ɾ륪֥Ȥˡ2鼰n
+ޤǤȤơ"[]=" Ȥ᥽åɤƤӽФ
+°(`.'̻)
1 `.' ̻ `=' 2
-1ɾ륪֥(쥷Фά줿`self')
-Фơ"̻="Ȥ᥽åɤ 2ȤƸƤӽФ
+°(ʤΥ᥽åɸƤӽФ)ؤϡ1ɾ
+֥(쥷Фά줿`self')Фơ"̻="Ȥ
+᥽åɤ 2ȤƸƤӽФ
**
@@ -472,11 +447,12 @@ moduleѤ롥ϱ黻ҷȤäƤ뤬᥽åɤǤϤʤ
`,' [ `,'..] [`*' ]= [, ..]
-դμĤʤϡͤȤ(ɬפʤto_a᥽
-ɤѴ)Ǥ򤽤줾캸դ롥ʳξˤϡ
-줾μͤդ롥դοȱդǤοʤ
-ˤ­ʤѿˤ nil졤;äǤ̵뤵롥¿
-κǸǤ`*'硤ĤưȤ롥
+դˤ3μ롥դμĤʤϡ
+Ȥ(ɬפʤto_a᥽åɤѴ)Ǥ򤽤줾캸
+դ롥ʳξˤϡ줾μͤդ롥
+դοȱդǤοʤˤ­ʤѿˤ nil졤
+;äǤ̵뤵롥¿κǸǤ`*'硤Ĥ
+ưȤ롥
foo, bar = [1, 2] # foo = 1; bar = 2
foo, bar = 1, 2 # foo = 1; bar = 2
@@ -690,7 +666,7 @@ whileξȽμǤʸɽƥϼ$_=~ ƥ
ƥ졼Ȥ湽¤(ä˥롼)ݲΤѤ᥽åɤ
Ǥ롥ƥ졼θƤӽФϰʲιʸǹԤʤ롥
- `{' ѿ.. `|' .. `}'
+ `{' ռ.. `|' .. `}'
ּפ֥åȤꤷּפΥ᥽åɤ򥤥ƥ졼Ȥɾ
롥ּפΥȥåץ٥Υ᥽åɤƥ졼ȤƸƤӽФ졤
@@ -709,13 +685,13 @@ Enumerable⥸塼grep᥽åɤΤ褦˥ƥ졼ȤƸƤФ줿
֥ȤγǤФԤʤη󶡤Ƥ롥
ϰʲ̤ꡥ
- for ѿ.. in
+ for ռ.. in
end
γǤФ¹Ԥ롥ϰʲμǤ롥
- ().each `{' ѿ.. `|' `}'
+ ().each `{' ռ.. `|' `}'
äƼͤΥ֥Ȥ᥽åeachʤ硤for¹Ԥ
㳰ȯ롥
@@ -908,13 +884,6 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹δؿ᥽åɤ(Ƥ
exit()Ȥϰäơ㳰ʤɤϰڹԤʤʤfork()θ塤
ץλʤɤѤ롥
- do()
-
- ֥å1٤¹Ԥ륤ƥ졼֥åޤȤ뤿
- ¸ߤ롥Ȥ:
-
- do { foobar() } while (baz())
-
eof()
ޥɥ饤󤫤ϤEOFãƤ硤֤
@@ -1048,8 +1017,8 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹δؿ᥽åɤ(Ƥ
fileɤ롥loadȤưΰ㤤requireϥɤե
Υեѥѿ`$"'˳ФƤơ˥ɤե
- ƥɤʤǤ롥ºݤ˥ɤˤ%TRUE˥
- ɤƤˤ%FALSE֤
+ ƥɤʤǤ롥ºݤ˥ɤˤTRUE˥
+ ƤˤFALSE֤
select(reads[, writes[, execpts[, timeout]]])
@@ -1224,23 +1193,23 @@ Rubyˤϸ̩ʰ̣ǤϴؿϤʤKernel饹δؿ᥽åɤ(Ƥ
$VERSION rubyΥС򼨤ʸ
- %TRUE t
- %FALSE nil
+ TRUE t
+ FALSE nil
줾쿿ͤɽȽǤnil򵶡ʳƤͤ
- ȤȽǤ뤿ᡤ%TRUEͤɽŪʿͤȤʾΰ
- ̣ʤäơ᥽åɤͤǤȤȤȡ
- 줬%TRUE֤ȤȤϸ̩ˤƱǤϤʤ(ҸŪѤ
- ᥽åɤ񿿤ͤȤ%TRUE֤褦ˤϤʤäƤ
- )Ĥޤ
+ ȤȽǤ뤿ᡤTRUEͤɽŪʿͤȤʾΰ̣
+ ʤäơ᥽åɤͤǤȤȤȡ
+ 줬TRUE֤ȤȤϸ̩ˤƱǤϤʤ(ҸŪѤ
+ ᥽åɤ񿿤ͤȤTRUE֤褦ˤϤʤäƤ뤬)
+ Ĥޤ
if some.method() then ... else ... end
- if some.method() == %TRUE then ... else ... end
+ if some.method() == TRUE then ... else ... end
- ϴˤƱǤϤʤ%FALSE˴ؤƤϡΤ褦
+ ϴˤƱǤϤʤFALSE˴ؤƤϡΤ褦
ʤ
* Ȥ߹ߥ饹ȥ⥸塼
@@ -1708,8 +1677,8 @@ Single Methods:
** Dict(饹)
񤢤뤤ϢǤդΥ֥ȤźȤǤΥ饹Ǥ
-롥HashȤ̾Ǥ⥢Ǥ롥Ϣ󥪥֥Ȥϰ
-ŪˤϢ``{a=>b,..}'' ǹԤʤ롥
+롥Ϣ󥪥֥ȤϰŪˤϢ``{a=>b,..}'' ǹ
+ʤ롥
SuperClass: Object
@@ -1796,10 +1765,9 @@ Single Methods:
()񥪥֥Ȥ֤
-** Directory(饹)
+** Dir(饹)
ǥ쥯ȥǤ֤ǥ쥯ȥꥹȥ꡼ΤΥ饹
-DirȤ̾Ǥ⥢Ǥ롥
SuperClass: Object
@@ -2681,7 +2649,7 @@ Private Methods:
άǽ2publicͿơĤͤnilǤʤ
Ϥ°ˤ°᥽åɤѰդ졤ǽˤ
- 롥attr("attr", %TRUE)ϥ饹˰ʲΥɤɲä
+ 롥attr("attr", TRUE)ϥ饹˰ʲΥɤɲä
ȤۤƱǤ롥
def attr; @attr; end
@@ -2690,7 +2658,7 @@ Private Methods:
°᥽åɤ뤳Ȥˤäơư
ѹǤ롥㤨
- attr("test", %TRUE)
+ attr("test", TRUE)
def test=(val)
print("test was ", @test, "\n")
print("and now is ", @test = val, "\n")
@@ -2843,8 +2811,8 @@ Single Methods:
whichwhoǻꤵץץ롼ס桼θ
̤֤ͥܺ٤getpriority(2)򻲾ȡProcess⥸塼
- ǤwhichȤƻǤ%PRIO_PROCESS%PRIO_PGRP
- %PRIO_USERƤ롥
+ ǤwhichȤƻǤPRIO_PROCESSPRIO_PGRP
+ PRIO_USERƤ롥
gid
@@ -2893,9 +2861,9 @@ Single Methods:
ξϰʲ®.
- do 1.upto(5)
+ 1.upto(5) {
...
- end
+ }
ϰϥ֥Ȥ`..'黻ҤξդComparableޤ९饹Υ
󥹥󥹤ǤвǤ⹽ʤϰϤϻȽޤळȤդ
@@ -3025,10 +2993,9 @@ Single Methods:
new(string[, casefold])
ʸɽѴ֥Ȥ֤άǽ2
- Ϳ줿ˤϡɽ֥Ȥϥƥ
- ѿ`$='ͤ˴ؤ餺λʸʸ̵뤷λ
- ̤롥ꤵʤϥޥåԤʤäΥƥѿ
- `$='ͤˤäƶ̤뤫ʤꤵ롥
+ Ϳ졤ͤnilǤʤˤϡ줿ɽ
+ Ȥϥƥѿ`$='ͤ˴ؤ餺ޥåʸ
+ ʸΰ㤤̵뤹롥
quote(str)
@@ -3456,7 +3423,7 @@ TCP/IPȥ꡼෿³Υ¦ΥåȤΥ饹Υ饹ˤä
gs = TCPserver.open(4444)
socks = [gs]
- while %TRUE
+ while TRUE
nsock = select(socks);
if nsock == nil; continue end
for s in nsock[0]
@@ -3766,7 +3733,8 @@ ARG : LHS `=' ARG
| ARG `||' ARG
| PRIMARY
-PRIMARY : LITERAL
+PRIMARY : `(' EXPR `)'
+ | LITERAL
| VARIABLE
| super `(' [CALL_ARGS] `)'
| super
@@ -3807,7 +3775,6 @@ PRIMARY : LITERAL
[resque COMPEXPR]
[ensure COMPEXPR]
end
- | `(' COMPEXPR `)'
| class identifier `:' identifier
COMPEXPR
end
@@ -3852,8 +3819,7 @@ ASSOCS : ASSOC (`,' ASSOC)*
ASSOC : ARG `=>' ARG
-VARIABLE : identifier
- | VARNAME
+VARIABLE : VARNAME
| nil
| self
| `__FILE__'
@@ -3880,7 +3846,7 @@ FNAME : identifier | `::' | `..' | `|' | `^' | `&'
VARNAME : GLOBAL
| `@'identifier
- | `%'identifier
+ | identifier
GLOBAL : `$'identifier
| `$'any_char
@@ -3889,18 +3855,22 @@ STRING : `"' any_char* `"'
| `'' any_char* `''
| ``' any_char* ``'
-REGEXP : `/' any_char* `/'
+REGEXP : `/' any_char* `/'[i]
GLOB : `<' any_char* `>'
* ռ
-RubyθͤC, Perl, EiffelγƸˤν˱ƶƤ.
-¾˱ƶȤƤtcl, AWK, bourne shell, CLU, Sather,
-Icon, Smalltalk, Emacs Lispʤɤ. ޤrubyθͤꤹ뤿
-˶ϤƲäʲˤ(ɾά): ͷ
-ƣϺ¼ΣţáغDECʤ@ֺ.ٻ̡
+RubyθͤϿ¿θαƶƤ. ʲˤΤϤμ
+ʸǤ롥
+
+ C, Perl, CLU, Sather, CLOS, Eiffel, Icon, tcl, AWK, bourne shell,
+ Smalltalk, Emacs Lisp.
+
+ޤrubyθͤꤹ뤿˶ϤƲäʲˤ
+ ͷƣϺ¼ΣţáغDEC
+ ʤֺ.ٻ(ɾά)
-------------------------------------------------------
Local variables:
fill-column: 70