Entries from 2007-11-07 to 1 day

以前の処理系と比べて速度比較

コアの部分は出来てきたので速度比較をしてみた。 named let もまだサポートしていないので ((lambda (a) (set! a (lambda (i) (if (= i 2000000) i (a (+ i 1))))) (a 0) ) '()) こんなコード。 大体 7倍くらい速くなった。 しかしまだまだ全然 Gauche には…

動いているけど気持ち悪いから追求

コンパイラとVMが連携して外から見ると正しく動いている。 ただ、ある部分のコードを読むとどうして動いているのかまったくの謎。すぐ落ちるはずなのに。 という状態だった。 これが気持ち悪いので深追いしたら、運良く動いているだけでいずれ困ったことにな…

gauche.test の test*

gauche.test の test* を良く使うのだけど。 (test* "closure-body" '(a b) (closure-body c)) 第1引数の name を考えるのが苦痛なので (define-syntax eqt (syntax-rules () ((_ a b) (test* (quote b) a b)))) こういうマクロを作ったら楽に。*1 Gauche 的…