2006-07-18から1日間の記事一覧

Concurrent Clean : CleanJ : test03 & test04 completed

test03 & test04 completed.

Concurrent Clean : CleanJ : さて次は・・・

test04まで通して、次にやることを忘れていました。あまりにも長く間が空いたので。 [id:lethevert:20060626:p3] .record命令の実装 これは、型クラス、レコード型、代数データ型などに関係しているところ。 [StdEnv] _SystemArray, _SystemEnumStrict, _Sys…

Concurrent Clean : CleanJ : さて次は・・・(2)

直前のコミットから3週間ほども空いてしまったのはなぜかと考えて、その間にやっていたことを確認。 Javaの書き方による効率性の違いの調査 Cleanのオブジェクトの種類・特徴とその実装方法の検討 ABCマシンとJavaVMの違いに関する考察 あと、途中でfinalに…

Concurrent Clean : CleanJ : レコード型

build d17 -3 n17なんだ、この「-3」というのは? .desc d17 n17 l17 1 0 "StrictRecord.i" .n -3 d17と何か関係があるのだろうか? .record r16 ircba 1 5 "StrictRecord" .descn t16 c16 5 1 "StrictRecord" .n 5 t16 .o 1 0 c16 push_node _cycle_in_spin…

Concurrent Clean : CleanJ : build [^ ]+ -\d+

build命令に負数が登場するという怪しいものは、これまで build d_S.1 -1 n_S.1のような、タプル操作に関するところだけだった。 うむ。タプルはレコード型だったのか!? それはともかく、共通するのは、両方とも、オブジェクトの要素を取り出す関数である…

Concurrent Clean : CleanJ : fill_r

fill_r命令の引数の意味を考えている。 .record r10 aaaaa 5 0 "LazyRecord" .record r16 ircba 1 5 "StrictRecord"に対して、 fill_r r16 1 5 1 0 0 fill_r r10 5 0 5 0 0という対応。 第6引数がターゲットだよね。 第4引数って、意味なくね? 第5引数の…

Concurrent Clean : CleanJ : push_r_args_b

push_r_args_b命令の引数の意味を考えている。 .record r16 ircba 1 5 "StrictRecord"の最初の「i」を取り出す関数。 .desc d17 n17 l17 1 0 "StrictRecord.i" .n -3 d17 .o 1 0 n17 push_node _cycle_in_spine 1 jsr_eval 0 .o 2 0 l17 push_r_args_b 0 1 5…

Concurrent Clean : CleanJ : レコード型実装

とりあえず、実装したが、実行したらいろいろエラーが出る。 とりあえず、B-Stack sizeが -5 みたいなわけのわからん数字になっているのをどうにかしないと。