summaryrefslogtreecommitdiff
path: root/ChangeLog
blob: f6246f3a0db8cf6d9d7110c69efe16ab5c932fab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
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変数として独立させた.

Tue Dec 20 00:46:19 1994  Yukihiro Matsumoto  (matz@dyna)

	* 0.63 released

	* eval.c(rb_call): superの呼び出しで落ちる.argc, argvの設定を忘れ
	  ていた.

	* parse.y(read_escape): 展開エラー.

	* variable.c: 定義済みの変数のhookを変更しないように.

Mon Dec 19 12:01:10 1994  Yukihiro Matsumoto  (matz@ix-02)

	* parse.y(cond): 条件式に代入式が置かれた場合,`-v'オプションで警
	  告が出るように.

	* parse.y(**): 冪乗演算子`**'の優先順位を単項演算子より高くした.

	* parse.y(and,or): 優先順位の低い演算子`and', `or'.

	* 0.62 released.

	* eval.c: 不必要になったPUSH_ENV, POP_ENVを減らした.

	* env.h: ENVIONからselfをはずした.PUSH_ENVはsuperの準備のためだけ
	  に用いることにした.

	* eval.c: 下記のオブジェクト化で遅くなった実行速度をもとに戻した.

Mon Dec 17 23:01:10 1994  Yukihiro Matsumoto  (matz@ix-02)

	* eval.c: env.{argv,argc}とscope.local_varsのオブジェクト化.

	* eval.c: 1スコープ内で複数Blockを生成したときのバグを修正.

Fri Dec 16 15:52:06 1994  Yukihiro Matsumoto  (matz@ix-02)

	* parse.y: `&&'と`||'の両辺はいつでも条件式とした.

Thu Dec 15 00:16:04 1994  Yukihiro Matsumoto  (matz@dyna)

	* eval.c(Block): Blockオブジェクトを実現.

	* node.h: NODE_QLISTはなくなった.

	* eval.c(rb_call): 引数への代入を名前で一つずつ代入するのをやめて,
	  一度にコピーするようにした.

	* eval.c(rb_call): rubyで記述されたメソッドへの引数渡しをinline化.

	* eval.c: イテレータ判定処理の全面書き換え.不適切なイテレータ呼び
	  出しをなくした.例えば「[foo(),bar()]{i|baz(i)}」でfooもbarもイ
	  テレータとして呼び出され*ない*.

	* eval.c(rb_call): SCOPE処理をinline化.メソッド呼び出しの若干の高
	  速化.

Wed Dec 14 18:09:33 1994  Yukihiro Matsumoto  (matz@ix-02)

	* node.h: nodeもオブジェクトにする.よってGCで回収される.

Thu Dec  8 14:17:29 1994  Yukihiro Matsumoto  (matz@ix-02)

	* 0.60 released - alpha test baseline.