2008-01-01から1年間の記事一覧

問題 2.4

(define (cons x y) (lambda (m) (m x y))) (define (car z) (z (lambda (p q) p))) ;(car (cons x y))->xになるのを説明せよといわれても、 ;コードをみれば自明であるとしか言いようがない。 ;これにたいするcdrは (define (cdr z) (z (lambda (p q) q))) …

問題 2.3

;問題の意図が良くわからない。 (define (square x) (* x x)) (define (average x y) (/ (+ x y) 2)) (define (make-segment s e) (cons s e)) (define (start-segment seg) (car seg)) (define (end-segment seg) (cdr seg)) (define (make-point x y) (con…

問題 2.2

(define (average x y) (/ (+ x y) 2)) (define (make-segment s e) (cons s e)) (define (start-segment seg) (car seg)) (define (end-segment seg) (cdr seg)) (define (make-point x y) (cons x y)) (define (x-point p) (car p)) (define (y-point p) (…

問題 2.1

(define (gcd a b) (if (= b 0) a (gcd b (remainder a b)))) (define (make-rat n d) (let ((g (gcd n d))) (let ((ng (/ n g)) (dg (/ d g))) (if (< ng 0) (cons (- ng) (- dg)) (cons ng dg))))) ;(define (make-rat n d) ; (let ((g (gcd n d))) ; (con…

計算機プログラムの構造と解釈(SICP)

1.45 (define (pow x y) (define (pow-iter x y p) (if (<= y 0) p (pow-iter x (- y 1) (* p x)))) (pow-iter x y 1)) (define (avarage x y) (/ (+ x y) 2.0)) (define (fixed-point f first-guess) (define tolerance 0.0000000001) (define (close-enoug…

計算機プログラムの構造と解釈(SICP)

1.39 (define (pow x y) (cond ((= y 0) 1) ((= y 1) x) (else (* x (pow x (- y 1)))))) (define (cont-frac f n d k) (define (cont-frac-iter f n d k i) (if (= k i) (/ (n i) (d i)) (/ (n i) (f (d i) (cont-frac-iter f n d k (+ i 1)))))) (cont-fra…

計算機プログラムの構造と解釈(SICP)

けっこう溜め込んでた。順に書いてく。 初めのほうはコードしか残っていない。 1.16 (define (% x y) (remainder x y)) (define (square x) (* x x)) (define (expt-0 b n) (if (= n 0) 1 (* b (expt-0 b (- n 1))))) (define (expt-1 b n) (expt-iter b n 1…

近況

あまり書かないとやめたみたいでよくないので。 合宿免許は無事とれました。 その後すぐに、大学の古美術研究旅行というのにでかけて、今奈良にいます。 EMOBILEが普通に使える。すごい。 お寺とか楽しいです。

合宿免許

あしたから合宿で免許取に行ってくる。 しばらくオンラインになれなくなるんじゃないかなー がんばってきます。

Xcode勉強会

ryocotanさん主催の勉強会。 勉強になりました。 みなさんありがとうございました! 和やかな雰囲気でよかった。 話は違うけど、計算機プログラムの構造と解釈の読書会とかしたいなー 今ある会はみんな進んじゃってるし、新たに初めから出来る場所ないだろう…

計算機プログラムの構造と解釈

読書会というLingr部屋をみつけた。これはいい。 1.15 a (((((12.15/3.0)/3.0)/3.0)/3.0)/3.0) = 0.05 5回 b ステップ数→0.1*3^n>aなる最小のn スペース数もステップ数も同じであると思われる。

javascriptでqwikのパーサ

基本構造はできた。 http://www.beppers.jp/~aoyama/qw/template/ firefoxのみで動作確認。 最終的な目標はgreasemonkeyにして、 qwikにプレビューとその場編集をつける。 あとその場プレゼンもつくってプレゼンツールとしたい。

javascriptでqwikのパーサ

を木曜ぐらいから書いてるんだけど、ちょっとはまった。 ("")?true:false; -> false ("" == null)?true:false; -> false ("" == false)?true:false; -> true なんだって! 怪しいときは、同値演算子を使うか、typeofを使うか、instanceof等を使うべきだった。

コンタクトレンズ

入れた。 親が執拗に「こわいよー」「痛いんだよー」 とかいうから、どんなもんかと思ってたら、全然怖くもないし、ほとんど何も感じなかった。 早くにやっとくべきだった。 全視界良好となり、結構気持ちいい。

計算機プログラムの構造と解釈

1.14 ;木構造を描く (cc 11 5) -> 4 -(cc 11 4) -> 4 --(cc 11 3) -> 4 ---(cc 11 2) -> 3 ----(cc 11 1) -> 1 -----(cc 11 0) -> 0 ------0 -----(cc 10 1) -> 1 ------(cc 10 0) -> 0 -------0 ------(cc 9 1) -> 1 -------(cc 9 0) -> 0 --------0 ------…

debian

古いノートにdebian入れた installguiってしたら入った。なぜかinstallじゃだめだった。

問題1.11

;再帰 (define (f n) (if (< n 3) n (+ (f (- n 1)) (* 2 (f (- n 2))) (* 3 (f (- n 3)))))) ;反復 (define (f x) (define (iter p pp ppp count) (if (< count 3) p (iter (+ p (* 2 pp) (* 3 ppp)) p pp (- count 1)))) (if (< x 3) x (iter 2 1 0 x))) 1…

計算機プログラムの構造と解釈

1.9 ;パターン1 (define (+ a b) (if (= a 0) b (inc (+ (dec a) b)))) ;生成されるプロセス (+ 4 5) (inc (+ 3 5)) (inc (inc (+ 2 5))) (inc (inc (inc (+ 1 5)))) (inc (inc (inc (inc (+ 0 5))))) (inc (inc (inc (inc 5))))) (inc (inc (inc 6))) (inc …

PC持ち込み可能の図書館

このごろ、休日は実家に帰って、実家近くの図書館で作業することが多い。 家でやるとすぐニコニコとか見ちゃうし、人とやると話したりしちゃうし。 試行錯誤の結果、図書館はかなりいいのではないかと思われる。 とはいえ、毎回実家に戻るのも時間の無駄なの…

ニコニコ

「耳をすませば」を見た。 私の中学高校時代のあやまちのひとつは、なんとなくすごしていれば、 こんな風な甘酸っぱいドラマに巻き込まれるのではないかと淡く期待していた点である。 言うまでも無く、彼に物語など用意されていなかったのである。

計算機プログラムの構造と解釈

1.7 (define (sqrt x) (sqrt-iter 1.0 x)) (define (sqrt-iter guess x) (if (good-enough? guess x) guess (sqrt-iter (improve guess x) x))) (define (improve guess x) (avarage guess (/ x guess))) (define (avarage x y) (/ (+ x y) 2)) (define (goo…

emacsキーバインド定義 参考:http://homepage1.nifty.com/blankspace/emacs/keybind.html ;C-xC-kでバッファキル (global-set-key "\C-x\C-k" 'kill-buffer) ;C-[で画面分けが閉じてしまうのを防ぐ (global-set-key "\C-[" nil) ;M-&で正規表現置き換え (gl…

サーバ側で、browserキャッシュの設定をいじる。

参考:http://tech.bayashi.net/pdmemo/browsercache.html

改行が残る件

javascriptでformで入力されたの文の改行文字を<br/>に変換していたんだけど、 以下のコードはメインのmacのfirefox2では上手くいっていたが、それ以外では改行が残ってエラーになった。 msg.replace(/\n/g,'<br/>'); alert(msg); /* form中身 foo bar baz 実行結果↓ f</br/></br/>…

pagmoのtimer関数

javascriptでtimerを濫立させると、firefoxで処理落ちが発生することがあります その問題はtimerはひとつにまとめると解決しました (解決したというより、処理は遅くなるが、処理落ちは発生しにくくなりました) PAGMOでは以下のように書いたものを使っていま…

計算機プログラムの構造と解釈

1.5 この前微妙な感じで終わってしまった。 自分でも良くわからなかったので、何とか納得できる形に説明してみる。 (define (p) (p)) (define (test x y) (if (= x 0) 0 y)) (test 0 (p)) ;;普通にMzSchemeで実行すると無限ループになった。 作用的順序と正…

合宿免許

合宿免許の申し込みした。 3/17から香川県。 あったかくて楽しいといいなー。

剣道

今日は剣道部に行ってきた。 自分用の防具買わないとだめだなー いつまでも学校の備品ばかり使ってるとよくない。 でもある程度強くなってきている気がする。 今度段の審査受けてみようかな。

初釜

今日は茶道部の初釜に行ってきた。 親に言われて興味も無いのにはじめた茶道だけど、最近はいいところもあるかもしれないと思っている。 茶道の所作は、いつもの気分でいると普通にいらいらするような無駄の多さで、 初めはなんでこんなとこで時間無駄に使っ…

計算機プログラムの構造と解釈

最近読んでるんですが、この本解答がついてない。 ググってみても、リンク切れとかでみあたらないし、 あってるか間違ってるかわからないけど、解いた分だけ毎回かいていこうと思う。 1.1 10 12 8 3 6 なし なし 19 #F 4 16 6 16 1.2 (/ (+ 5 4 (- 2 (- 3 (+…