2006-06-01から1ヶ月間の記事一覧
今までは"時間"の観点から現実世界をモデル化していたところを、別の視点からやってみましょう、というお話。具体的には(遅延)ストリームです。 前準備 サイトに載ってないコードだけ。 (define the-empty-stream '()) (define (stream-null? s) (eq? s the-…
久々に読む。なんか読みにくくて和訳版の本読んでみたけど同じくらいわかりにくかった…。 この節は多くの問題を省略。図を描いたりただ調べるだけのが多いので。 3.41 一つの処理しか行わない手続きを直列化することに意味はない。 3.42 よく分からない。問…
おもしろかった。予言の守護者 - ベルガリアード物語〈1〉 (ハヤカワ文庫FT)作者: デイヴィッドエディングス,David Eddings,宇佐川晶子出版社/メーカー: 早川書房発売日: 2005/02/24メディア: 文庫購入: 19人 クリック: 964回この商品を含むブログ (108件) …
\usepackage{ascmac}して \begin{screen} ... \end{screen}TeXはよく分からないまま入れたのでファイルの位置がぐちゃぐちゃ。入れ直したい。
C:\>ruby -e "hoge" ruby: No such file to load -- ubygems (LoadError) いつの間にこんなことに。困ったな。
等式を制約として扱うことで解を求める。項どうしが演算、等号で結合されていればそれはそれらの項に対する制約と見なせる。たとえば a + b = c という式なら、どの2変数が決まっても残り1つの変数は自動的に決まる。これを自動化することを考えてる。おもし…
$haystack =~ s/$needle/$needle/g こんなのも忘れてた。
論理回路をシミュレート。 導線(wire)同士を関数で繋ぐ感じ。 入力側のwireの持つ値(導線の信号)が変化したときに関数を呼び出して、出力側のwireの信号を変化させる。 その際発生する遅延もシミュレートする。 時間軸を一列にとっておいて、after-delayとい…
テーブル、連想リスト。 3.24 (same-key?を指定できるテーブル) (define (make-table same-key?) (let ((local-table (list '*table*))) (define (assoc key records) (cond ((null? records) #f) ((same-key? key (caar records)) (car records)) (else (as…
(define (front-ptr queue) (car queue)) (define (rear-ptr queue) (cdr queue)) (define (set-front-ptr! queue item) (set-car! queue item)) (define (set-rear-ptr! queue item) (set-cdr! queue item)) (define (empty-queue? queue) (null? (front-pt…
3.12 (define x (list 'a 'b)) (define y (list 'c 'd)) (define z (append x y)) z ; => (a b c d) (cdr x) ; => (b) (define w (append! x y)) w ; => (a b c d) (cdr x) ; => (b c d) 3.13 (define (last-pair x) (if (null? (cdr x)) x (last-pair (cdr …
変数束縛と環境云々。問題は絵を描くのばっかなので理解したことにして省略。
set!でデータの中身を変更できるようにすると参照透明性が失なわれてデータの同一性が判断できなくなるよ、というお話(かな?) 3.1 (define (make-accumulator acc) (lambda (n) (begin (set! acc (+ acc n)) acc))) 3.2 (define (make-monitored proc) (let…
はついに怠け心が勝って飛ばすことに。
どこかまでかはかわいいのに、どこかから突然かわいくなくなっちゃう感じ。 うーん、確かにそんな感じですね。。 function iterate (f, s) { return chain([s], { next: function() { return s = f(s) } }) } function right(a, b) { return b } var last = …
こっそり var succ = compose(String.fromCharCode, partial(operator.add, 1), methodcaller('charCodeAt')); compose.apply(null, list(repeat(succ, 10)))('a'); // => "k"びみょーっつうか長い。
バージョンアップしたら動かなくなった。 Hint Options > XPath of the elements to be hinted //a[@href]|//input[@type="text" or @type="submit" or not(@type)]|//textarea|//select|//button|//*[@onclick]こんな感じで。でもなんかバギー。 あとFirebug…