問題5.26 – SICP(計算機プログラムの構造と解釈)その276
問題5.26 反復的手続きの factorial を使った各値の n! の計算に使うスタックの最大深さとプッシュの回数の結果。 ;;; EC-Eval input: (define (factorial n) (define (iter product counter) (if (> counter n) product (iter (* counter product) (+ counte…続きを読む
問題5.26 反復的手続きの factorial を使った各値の n! の計算に使うスタックの最大深さとプッシュの回数の結果。 ;;; EC-Eval input: (define (factorial n) (define (iter product counter) (if (> counter n) product (iter (* counter product) (+ counte…続きを読む
Ubuntu 9.10 をインストールした際に行ったいくつかの設定をメモしておく。 Compiz の設定をする CompizConfig 設定マネージャをインストールして各設定を行う。 $ sudo aptitude install compizconfig-settings-manager Gnome Terminal の起動時のウィンドウサイズを指定する。 ランチャのプロパティのコマンド(A)…続きを読む
問題5.24 自分の脳内レジスタの性能が悪いのでどうもアセンブラは苦手… レジスタに番号タグをつけて状態を把握しながら組み立てていった。 (define eceval-operations (list (list ‘self-evaluating? self-evaluating?) ;; 省略 (list ‘cond? cond?) (list ‘cond-clauses cond-…続きを読む
Ubuntu 9.10 に Dropbox をインストールしていたら、途中の yes/no 選択が "はい/いいえ" の日本語になっていてどう入力しようか迷ったが、結局 yes と普通に英語で入力しておいた。 この部分は翻訳せずに yes/no のままの方がいいと思うんだけど。 $ sudo echo " deb http://linux.dropbox.com/ub…続きを読む
Thinkpad X60 の HDD を Intel X25-M SSD に換装して Ubuntu 9.10 をインストールした。 HDD から SSD への換装は、以前 HDD の換装をしたことがあったので簡単にできた。 SSD は件のファームウェアにアップデートしていたのでこわごわとインストールしたが問題ないようす。 まあ、問題が発生しているのは Windows7 だけみたいだし、ファームウェ…続きを読む
問題5.23 最初 cond と let の eval-dispatch での配置を application よりも後にしていた為にエラーとなって動かなかった。 (define eceval-operations (list (list ‘self-evaluating? self-evaluating?) ;; 省略 (list ‘cond? cond?) (list ‘cond->if …続きを読む
Ubuntu 9.10 日本語 Remix CD がリリースされたことだし、そろそろインストールしようかな。 NetworkManager のアプレットをクリックしたら、クラッシュしてしまい無線LANの接続が切れてしまった。 ネットワーク設定のツールに wicd (Wireless Interface Connection Daemon) というものを見つけたのでメモ。 Dropbox の Kar…続きを読む
今回も先に評価器を実装してから問題を解いていく。 4.1.4 の評価器と 5.2 のレジスタ計算機シミュレータをロードする。 4.1.4 の評価器の eval と apply はコメントアウトしておく。 (load "./sicp4.1.4.scm") ; 4.1.4 評価器 (eval, apply をコメントアウトする) (load "./sicp5.2.scm&…続きを読む
ext4 で新規フォーマット・インストールした Ubuntu 9.10 で、デスクトップCDイメージファイルを10回コピーしてチェックしてみた。 問題なくコピーできている様子。 ext4 をそのままデフォルトファイルシステムに採用してリリースしていることからみて、このバグ(Bug #453579 in linux (Ubuntu): “corruption of large files repor…続きを読む
Ubuntu で利用している uim-skk の記号の入力が MacOSX での AquaSKK と少し違ったので設定をしてみた。 ~/.uim に以下の記述をする(文字コードは EUC-JP)。 (require "japanese.scm") (define ja-rk-rule (append ‘( ((("~") . ()) ("~&quo…続きを読む