Entries from 2006-07-01 to 1 month

構文解析

ワイワイ話したのでまとめ Node1 Node { Node left; Node right; }ストイック方式。 Node2 Schemの構造の一部を知っている。 Node { Node function; Nodes args; } Node3 この時点で意味を解釈しない。 Node { Nodes nodes; }

構文解析その後

まとめはSICPの日記で書くとして今はこんな感じ。 (+ a 1) => OP_BODY[+] OP_SYMBOL[a] NULL NULL OP_ARGS OP_NUMBER[1] NULL NULL NULL 複雑で紛らわしいものを試す (a (b 2 3)) OP_BODY[a] OP_BODY[b] OP_NUMBER[2] NULL NULL OP_ARGS OP_NUMBER[3] NULL N…

夕日と非常階段で高所恐怖症

分かりにくいですがid:kiyoheroが手すりにつかまりながら恐る恐る降りています。

sizeコマンド

id:mizuno_takaaki図書館のInterface 2004年12月号の「リンカを100%つかいこなそう」の記事を読んでいたら見知らぬ size コマンドが出てきた。 思わず man sizeして、ついでに実行してみた colinux% size /usr/local/bin/gosh text data bss dec hex filenam…

JavaScriptの編集はecmascript-mode.elよりもjavascript.el?

EmacsでのJavaScriptの編集をするときはecmascript-mode.elを使っていたのですが、海外のサイトでjavascript.elの評判がよさそうだったので使い始めています。 (add-to-list 'auto-mode-alist '("\\.js\\'" . javascript-mode)) (autoload 'javascript-mode …

コンパイラ作るのと同じくらい難しいもの

奥さん*1との会話。 W「最近何やっているの?」 H「インタプリタとかだね。構文解析がわからないからコンパイラの本を読んでみようかと」 W「そうか。コンパイラは難しいよねー」 H「えっ(?)。コンパイラって何と同じくらい難しいと思っている?」 W「エ…

予約

予約した。コンパイラの構成と最適化posted with amazlet on 06.07.06中田 育男 朝倉書店 (1999/09)売り上げランキング: 38,720Amazon.co.jp で詳細を見る

構文解析その後

核心に迫りながらももやもやが晴れずにいたので、夜の散歩に行った。 10分ぐらい歩いたらピースがひとつになった。 TreeをPrintしてみたけど合っているっぽい。明日微調整およびリファクタリング予定。

1回お休み

構文解析ではまり、頭が回らないので1回お休み。 頭の中にばらばらなピースがいくつもあるんだけど、もうちょっとでひとつになりそうな気がする感じ。 構文解析を基礎から勉強するのに良いWebサイトを募集中です。

メモリリークつぶし中

VnodeCacherがVnodeの解放をやるといろいろ都合がよさそう。(残りリークポイント8/12) 関係ないけど dev-j で nikqさんに構文解析周りを教えてもらった。 悩んでいたところがすっきりしたのでたぶんSchemeインタプリタは前進できると思う。

valgrindで file_serverをデバッグ

ValgrindでApacheモジュールのメモリバグを見つけようでも書いた、valgrind を使って file_server のメモリリークをチェックしたかったのであれこれ仕組んだ。 確信犯的にメモリの後始末を考えていなかったのである程度はしょうがないけどこれはひどいw ==3…

CodeFest Akihabara 2006

〜フリーソフトウェアのハッカーが夜通し開発をし、語り合うイベント〜 ¶ 「 CodeFest 」とは、普段はインターネット上でのやり取りのみでFace-To-Faceでは 話し合う機会がないハッカー達が一ヶ所に集い、Bug Squashing マラソン、 ソフトウェアのリリース直…

想像しているよりは簡単だ

Mona OSくらいのおもちゃOSを作るのも、インタプリタを作るのも、簡単な字句解析をするのも、ICMPを実装するのも、ファイルシステムを作るのも、自分が過去に想像していたよりはだいぶ簡単なのだなということに気付かされることが良くあります。 未知のもの…

関数型言語の勉強にSICPを読もう - (57) 4章 - 超言語的抽象 - 小休止 - 字句解析を書く

持ち時間のもう1時間は字句解析の勉強にあてる。 Schemeの入力に対してどのような token を定義すればよいか分からないんだけど想像で以下のようにしてみる。 token enum { IDENTIFIER, STRING, NUMBER, LEFT_PAREN, RIIGHT_PAREN, QUOTE, }; 字句解析 まず…

statのテストと実装

持ち時間のうち、最初の1時間は Vnodeのフレームワークに stat を導入する。 テスト VnodeManager monapi_call_file_get_file_size FileSystem ISO9660FileSystem ProcessFileSystem テストもとおり実装完了。 Mona Wikiにやったことをまとめて、日記を書い…