Entries from 2006-04-01 to 1 month

関数型言語の勉強にSICPを読もう - (22) 2章 - データによる抽象の構築 - 2.3.2 (90-94ページ)

問題2.60 ;; element-of-set?は変更の必要がない。 ;; 重複が許される分リストが大きくなるので多少効率が下がる。 (define (element-of-set? x set) (cond ((null? set) #f) ((equal? x (car set)) #t) (else (element-of-set? x set)))) ;; ただ足すだけ。…

自分が弱いなと思った瞬間

それは昨日の事。 Monaのメッセージ機構のエミュレートどうにかしないとまずいよな。 どう考えても最優先事項だよ。という状態で 頭の中に浮かんだこと FF12でモブでもやるか?Hランクにチャレンジしたいし FF12のレベル上げでもするかな? SICPでも読もうか…

瀬名秀明さんのブログ

http://news.senahideaki.com/をid:onishiから教えてもらった。 ちょうどデカルトの密室を読了したところだったのでタイムリー。 デカルトの密室はチューリングテストとかを知らない人は読んでみると良いかも。 僕はチューリングテストは知っていたのですが…

関数型言語の勉強にSICPを読もう - (21) 2章 - データによる抽象の構築 - 2.3.2 (89-90ページ)

順序づけられないリストとしての集合 (define (element-of-set? x set) (cond ((null? set) #f) ((equal? x (car set)) #t) (else (element-of-set? x (cdr set))))) (define (adjoin-set x set) (if (element-of-set? x set) set (cons x set)))ちなみに in…

THE ED SULLIVAN SHOW

うぉ!!GyaOでエドサリバンショーだって!!! (THE ED SULLIVAN SHOW)

関数型言語の勉強にSICPを読もう - (20) 2章 - データによる抽象の構築 - 2.3.2 (85-88ページ)

2.3.2 記号微分 これはなかなか面白い。サボらずに全部やってみよう。最終目標は例えば (deriv '(* x y) 'x)の結果がyになること。 クォートされることから分かる通りx, yはSchemeの変数ではない。 SICPにある通り derivは variable? same-varibale? sum? ad…

NIC - ドライバインターフェースの悩み

EDS1275さんが、Vmware用にNICドライバを書いてくれているのですが悩んでいます。 誰か詳しい人がいたらアドバイスをいただけると助かります。 前提 - Monaの割り込みインターフェース 割り込みが発生すると、カーネルは事前に登録のあったプロセスに割り込…

関数型言語の勉強にSICPを読もう - (19) 2章 - データによる抽象の構築 - 2.3.1 (83-85ページ)

2.3.1クォート 今まではデータは数値だけでしたが、クォートが登場しました。 問題2.53 (list 'a 'b 'c) gosh> (a b c) (list (list 'george)) gosh> ((george)) (cdr '((x1 x2) (y1 y2))) gosh> ((y1 y2)) (cadr '((x1 x2) (y1 y2))) gosh> (y1 y2) (pair? …

プログラマへの朗報 - ソース貼れといわれたら

笑った。 http://planet-d.hp.infoseek.co.jp/cache2ch/2005/0321b.html#

moccur-grep

http://www.bookshelf.jp/soft/meadow_50.html#SEC734 スペース区切りで,一番最後に書いた正規表現をファイルマスクと認識します.この場合であれば,「.」の正規表現に一致する文字を含むファイル(つまりすべてのファイル)を対象に,[0-9]+ という正規表現…

サムタイム・イン・ニューヨーク・シティ

何か足りないと思っていたらこれが手元になかった。 1枚目の1曲目が好きなんだけど差別用語がタイトルに含まれているから微妙。" style="border: none;" />サムタイム・イン・ニューヨーク・シティposted with " target="_blank">amazlet on 06.04.22プラス…

読書速度を測ろう - 目指せ速読

id:kmt-tさんのところにあったネタです。(id:kmt-t:20060420#1145530633) 読書速度測定で自分の読書速度を測ることができます。 ちょうど昨日の夜、SICPをもっと早く読むことができれば人生の効率が良くなるのにとか思っていたので測ってみました。 結果 Σ(…

関数型言語の勉強にSICPを読もう - (18) 2章 - データによる抽象の構築 - 2.2.4 図形言語 解説とソース

図形言語で学ぶべき部分は何でしょうか? この言語では組み合わされたオブジェクトはリスト構造ではなく、手続きとして表現されている おそらくここが一番大事なのではないかと考えます。 ただ実際にコードを書いて動かしてみないと理解するのは正直厳しいで…

関数型言語の勉強にSICPを読もう - (17) 2章 - データによる抽象の構築 - 2.2.4 図形言語 モナー

夜な夜なコードを書いてやっと絵が出ましたよ。 うれしくてうれしくてしょうがないのでとりあえず説明なしでアップしておきます。 説明・コードは明日で ※「SICPを読もう」の目次はこちら 計算機プログラムの構造と解釈posted with amazlet on 06.04.15 Gera…

関数型言語の勉強にSICPを読もう - (16) 2章 - データによる抽象の構築 - 2.2.4 図形言語(73-82ページ)

早くSchemeで絵を出したいので、 frame, painterの概念を学ぶところから進めようと思います。 幸い Gauche-glで線を引く部分は理解できているので、本文中の wave painterは実装できるとふんでいます。 フレーム座標写像について 文章を読んでもさっぱり分か…

MonAPI::Messageのエミュレート残る課題

send/receiveをエミュレートできているから完璧だと思いきやpeekを利用した、receiveがうまくエミュレートできない。 int Message::receive(MessageInfo* dst, MessageInfo* src, bool(*equals)(MessageInfo* msg1, MessageInfo* msg2))↑こんなやつ。Linuxで…

関数型言語の勉強にSICPを読もう - (15) 2章 - 小休止 Gaucheで画面に絵を出そう(Gauche-gl)

計算機プログラムの構造と解釈を読んでScheme勉強していますといっても、いったい何の役に立つの?と思っている人が多いと思います。 僕も実際、考え方はかなり勉強になっていますがまだ仕事やMonaに結びつけることが出来ていません。 こういう状態が長く続く…

これで全部

全部出しました。これでもう隠し持っているものは何もないです。

関数型言語の勉強にSICPを読もう - (14) 2章 - データによる抽象の構築(70-73ページ)

2.2.3公認インターフェースとしての並びのつづき 問題2.37 一旦パス。 余裕があったらここに戻ろう。 mapの使い方の勉強になりそうな気がする。 問題2.38 上から順に 3/2 1/6 (1 (2 (3)))→間違い(1 (2 (3 ()))) (3 (2 (1)))→間違い(((() 1) 2) 3) 満たすべき…

関数型言語の勉強にSICPを読もう - (13) 2章 - データによる抽象の構築(65-69ページ)

2.2.3公認インターフェースとしての並び 「accumulate」の意味が分からないので辞書を引いた。 ━━ v. 積む, ためる; 積もる, たまる; 【コンピュータ】累算する. まずはaccumulateの動作を確認しよう。 (define (accumulate op initial sequence) (if (null?…

関数型言語の勉強にSICPを読もう - (12) 2章 - データによる抽象の構築(63ページ)

問題 2.28 (define (fringe tree) (define (pair-to-list pair) (list (car pair) (car (cdr pair)))) (if (null? tree) '() (if (pair? (car tree)) (append (pair-to-list (car tree)) (fringe (cdr tree))) (append (car tree) (fringe (cdr tree))))))と…

関数型言語の勉強にSICPを読もう - (11) 2章 - データによる抽象の構築(62-63ページ)

問題 2.24 (list 1 (list 2 (list 3 4))) gosh> (1 (2 (3 4)))問題なし。 問題 2.25 (car (cdr (car (cdr (cdr (list 1 3 (list 5 7) 9)))))) (car (car (list (list 7)))) (car (cdr (car (cdr (car (cdr (car (cdr (car (cdr (car (cdr (list 1 (list 2 (l…

連絡事項

過去に書いていた記事をゆっくりとアップするといろいろ弊害があるのでこれから全部アップします。

関数型言語の勉強にSICPを読もう - (10) 2章 - データによる抽象の構築(59ページ)

問題2.20 この問題をぱっと見で解こうとしたらあっという間に、はまってしまったので簡単な要素に分けてみました まずは数値のリストを受け取って、その中に含まれる偶数だけを返す関数を作ってみるのはどうでしょうか。 (define (collect-even list) (if (n…

ひとり言

今公開している(9)とかは、1週間前くらいに書いていた記事なので皆様から頂いたアドバイスが反映されていないとかいろいろありますがもうすぐ、ねたが尽きるのでリアルタイムになると思います。 SICPを学生時代に読めればよかったとか考えたんですが、もとも…

関数型言語の勉強にSICPを読もう - (9) 2章 - データによる抽象の構築(45-58ページ)

48ページ 以前にも一度 car、cdrを勉強したのですが、それが「なぜ必要か?」「その背景には何があるのか?」が分かりませんでした。 その答えの導入部は48ページに書いてあります。 ここを読んだだけではだめで、手続きの抽象化についてしっかり読んだ後に読…

Yさんからの贈り物

いつもお世話になっているYさんから会社に面白いものが届きました。 DVD とてもとても偽者の香りがしますが本物? うはw。何かとても古いドラえもんだなぁ。 コミックス さっぱり分からない。。。 Yさんからの手紙(一部) 帰国時に使用したどこでもドアが壊…

Effective C++ 原著第3版

Effective C++ 原著第3版が出るみたいですね。これはもう買うしか。 ページ数がやたら増えているのは気のせいですか。勉強しなおしですか。過去にEffective C++を読んだ日記を書いていたので雰囲気を知りたい方はどうぞ。 Effective C++ 原著第3版posted wit…

file_serveをLinuxで動かしたい

Messageのエミュレーション部分は完全に動いた。 自分自身へのメッセージ送信 任意のプロセスへのメッセージ送信 が可能になった。 またMessage::lookupMainThread()もエミュレートできている。 残る作業は、 mona/core/file_server/のソースを experimental…

関数型言語の勉強にSICPを読もう - (8) 1章 - 手続きによる抽象の構築(31-44ページ)

1.3 高階手続き やっとここまでたどり着いた。 概念は理解しているし、たまに使うけど何か発見があるのではないだろうか。 問題1.31 (define (product term a next b) (if (> a b) 1 (* (term a) (product term (next a) next b)))) (define (factorial n) (…