ウォンツテック

そでやまのーと

javascript

 サーバーが復活したのでインタープリター公開

schemeもどき

scheme処理系もどき

とりあえず再帰は出来るようにしました。scopeがおかしかったのでParseクラスのスタックとして書き直し。あとlambdaっぽいのも出来るようにしときました。 (define (func a) (lambda (x) (+ a x))) ((func 3) 5) とか (define (fib n) (if (< n 3) 1 (+ (fib…

会社の人に処理系見てもらったら以下のを書いてもらった (define (#f) (= 1 0)) (define (#t) (= 1 1)) (define (<= a b) (if (< a b) (#t) (if (= a b) (#t) (#f)))) #tとか#fとかコアに、 すばらしいです。

処理系

JSでscheme処理系もどきを書こうと思ったけどdefine出来るネスト可な四則演算しか書けなかったorz.. 今週末気が向いたらフィボナッチが動くくらいはがんばるかな。 今回のだと下記くらいしかできない (define a 3) (define b 2) (+ a (+ b 1) (/ 4 2) (+ 3 (…

Ajaxの勉強でJavaScriptを書き中 この言語、、、関数内に変数書いてもグローバル変数扱いになる。。たとえば function func1() { hoge = "aaa"; } function func2() { document.write(hoge); } みたいな形でfunc2で変数hogeが参照出来てしまう。。