rurururururumin’s diary

勉強の備忘録

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

SICP 1.6

問題 1.6Alyssa P. Hackerはifが特殊形式である理由が分らない. 「cond を利用し, 普通の手続きとして定義してはいけないの?」と聞いた. Alyssaの友人のEva Lu Atorはそうすることはもちろん出来るといって, ifの新版を定義した:(define (new-if predicate t…

SICP 1.5

問題 1.5Ben Bitdiddleは, 彼の対面している解釈系が, 作用的順序の評価を使っているか, 正規順序の評価を使っているか決定するテストを発明した. 次の二つの手続きを定義した: (define (p) (p))(define (test x y) (if (= x 0) 0 y)) 彼は次に式 (test 0 (p…

SICP 問題1.4

問題 1.4 われわれの評価モデルは, 演算子が合成式である組合せでも使えることを観察せよ. それに従って, 次の手続きの振舞いを述べよ. (define (a-plus-abs-b a b) ( (if (> b 0) + -) a b) ) とりあえずぶっこも~ #lang racket (define (a-plus-abs-b a b…

SICP 問題1.3

問題 1.3三つの数を引数としてとり, 大きい二つの数の二乗の和を返す手続きを定義せよ. やっとプログラミングっぽい問題。 condの練習かな? (require (lib "racket/trace.ss")) (define a 1) (define b 7) (define c 5)(define sumofsquare ;「二乗の和」の…

SICP 問題1.2

お盆毎日しようと思ってたのに… 逆にこれくらいマイペースな方がいいんかな… 問題 1.2次の式を前置記法に翻訳せよ. (/ (+ 5 4 (- 2 (- 3 (+ 6 (/ 4 5))))) (* 3 (- 6 2) (- 2 7))) #|---------------------------------- 普通に計算すると、 ( 5 + 4 + ( 2 …

SICP問題1.1

ちゃんと続けられるかな~とか書いてて しょっぱなから20日近くも経ってました。 このブログの未来が予想できすぎる() 気を取り直して、さっそくやっていきます。 前文とか、章の文章が噂通り難し~ 「文章読む」という行為に抵抗ないし早く読めるタイプだ…

はじめに

はじめまして。 プログラミング未経験 ド文系脳 が、苦しみもがきながらSICPをやります。 SICP-計算機プログラムの構造と解釈ー https://sicp.iijlab.net/fulltext/ ここで日本語版の内容が見れます。 計算機プログラムの構造と解釈 第2版 作者: ハロルドエ…