Entries from 2006-10-01 to 1 month

コーディング再開

Ubuntuアップグレードも一段落ついたのでMonaのコーディング再開。 svn add 忘れで失われた描画担当の screen server を再実装。 ここは再帰できれいに書けそうだなってところで、ずばり書けるとうれしいです。(再帰期)

Ubuntu 6.10 Edgy インストール Thinkpad X40

経緯 dist-upgrade したら途中で止まって、/dev/nullすら Permission Deniedになったのでubuntu-ja-6.10-desktop-i386.isoをクリーンインストールした。 一部ソースコード消失。 インストール GUIでインストールを淡々と進める。 パーティションは手動で以下…

OSC2006 fall で思ったことメモ

OSC

サウンド対応は必須。優先度を上げたい。 /dev/地デジを実装しよう dev-jコアメンバには一生かかっても追い付けないことを再認識 「プロテインはありますか?」 Plan9日記を前から購読していたけど、以前から知っている人が中の人だった。そりゃそうか。あん…

「計算機プログラムの構造と解釈(SICP)」を読み終えて

約半年をかけて計算機プログラムの構造と解釈(SICP)を読み終わりました。 (途中で、練習問題をスキップしたりしましたが・・・) 半年もかけたのでちょっとだけ振り返って見ます。 SICPを読む過程で得たもの まずはSICPを読む過程で得たものからざっと列挙…

apply

あー。apply使えばもっときれいに書けるところを発見。

関数型言語の勉強にSICPを読もう - (84) 5章 - レジスタ計算機での計算(339-366ページ)

5.5 翻訳系を一気に読んだ。例のごとく練習問題は解いていない。 Scheme on Scheme の超循環インタプリタから始まり、Schemeレジスタ計算機に行き、最後にコンパイラにやっと到達。 このように過程を見せられると、それぞれの本質とか利点が浮き彫りになって…

明日はオープンソースカンファレンス

明日はオープンソースカンファレンスですよ。 詳しくは→オープンソースカンファレンス2006 Tokyo/Fall - Come ON!

minibuf-isearchに欲しい機能

minibuf-isearchがないと生きていけない今日この頃ですが、インクリメンタルサーチ時に半角スペースを入れると、それで区切ってAND検索でしぼる機能があったら良いなぁ。例えば 「shell cpp」を入力して候補をしぼってくれる的な。

騒音

オフィスの近くで工事をしていて、ちょっと集中できないな。 こんなときこそノイズキャンセリングヘッドフォン。

テスト

テスト書き込み

mona-compile.el 0.0.1 リリース

Emacs上でMonaのファイルを編集時に裏で勝手に make を走らせる Emacs Lispを公開しました。 以前から何度か触れていましたが、きちんと形にして公開することにしました。 ダウンロード SourceForge.net: Files mona-compile.el できること mona/contribでソ…

こまごました時間だとこまごました機能しか作れない

こまごました時間だとこまごました機能しか作れない と某氏が言ってた。 その通りだと思った。

画面出力抽象化

画面出力抽象化について調べたり書いたりしていたらこんな時間に。。 議論/画面出力抽象化 - Mona PJ Wiki

コールバック

C++

Tinoさんがまとめているコールバックの話が面白いですよ。 コールバック - Mona PJ Wiki

関数型言語の勉強にSICPを読もう - (83) 5章 - レジスタ計算機での計算(328-338ページ)

5.4積極評価器 レジスタと演算 5.4.1積極制御評価器の中核 単純式の評価 手続き作用の評価 手続き作用 5.4.2並びの評価と末尾再帰 末尾再帰 5.4.3条件式、代入および定義 代入と定義 5.4.4評価の実行 評価器の性能監視 急激に難しくなった。 5.1.1で学んだ S…

水泳

ひがしが休みだったので戻って代官山へ。 バタ足の極意を掴みつつある気がしなくもない。 1000m。

多段pipe

このような多段が通るようになった。 print higepon|upper|reverse => NOPEGIH

イキガミ

イキガミ 1 (1) イキガミ 2 (2) 設定が面白い。

標準入出力とpipeを実装中

入力されたアルファベット文字列を大文字化するプログラム upper は以下のような挙動を要求される。1.コマンドライン引数で渡された文字列を大文字化する %upper higepon => HIGEPON 2.キーボードで入力された文字列を大文字化する %upper (キー入力で higep…

defvar

(defvar mona-build-mona-dir-path "~/mona" "*mona directory path")説明文が * から始まる場合の挙動は知らなかったな。 defvar is a special form in `C source code'. (defvar SYMBOL &optional INITVALUE DOCSTRING) Define SYMBOL as a variable, and …

勝手make

mona-buile.elの改良。 mona/core/monapi/直下のファイルを触ったときの make がおかしいのを修正。 ((string-match "\\(.+\/mona[^\/p]*\\)\/" filename)p を追加した辺りで察してください。Emacs Lispで Cにおける__func__, __LINE__みたいなものはないだ…

Flash Player9 Beta for Linux

id:kambaraに教えてもらった。 Adobe Labs - Downloads: Flash Player 9 Update 追記 SCIMと相性が悪かったので元のバージョンに戻した。

関数型言語の勉強にSICPを読もう - (82) 5章 - レジスタ計算機での計算(324-327ページ)

「ストップアンドコピーごみ集めの実装」を読んだ。 欠点は The costs of the stop-and-copy algorithm are twofold: First, the algorithm requires that all live objects be copied every time garbage collection is invoked. If an application program…

shinh 度チェック

shinh 度チェック85%って結構高いな。 あなたの shinh 度は 85% です! shinh の疑いが深刻なレベルまで来ています。速い段階で専門医に見てもらって方がいいでしょう。大丈夫、 shinh は難病ですが、不治の病ではありません! あなたにかかっている shinh …

インストールメモ

automake/autoconf をソースから最新版を入れた

眺める

時間のかかる make をなぜか、ぼーっと眺める。 時間のかかる rsync をなぜか、ぼーっと眺める。 時間のかかる scp をなぜか、ぼーっと眺める。 他の事は何も手につかない。 そんなことって良くあるよね。という話を id:hideoki, id:nagayamaとした。

関数型言語の勉強にSICPを読もう - (81) 5章 - レジスタ計算機での計算(320-323ページ)

記憶の割当てとごみ集め ベクタとしてのメモリー 基本リスト演算の実装 スタックの実装 無限メモリーの幻想の維持 あたりを読みました。 GCの話に突入。 今までSICPではメモリアドレスなんて一切気にしていなかったのに突然あらわれます。 僕は馴染み深いの…

教訓:キーボードマクロを使おう

ChangeLogメモに関して、定型の作業があったので最近覚えた Emacs Lisp で書いてみようとがんばっていました。 バッファの各行に対してあれをやってこれをやって、あそこに yank してみたいな内容なのですが、意外とハマリポイントがあって結構時間がかかり…

GNU GLOBAL gtags.el の pop でkill-bufferされるのを防ぐ

GNU GLOBAL + gtags.el は超便利なので毎日使っています。(Perlも対応して欲しい。) 一つだけ不満があって、TAGジャンプ後 pop して戻ってきたときにひとつ前の buffer が kill-bufferされてしまう。 最近 Emacs で開いていたはずのバッファがいつの間にか…

メモ

Stream::FromHandle()で、handle からStreamインスタンスを作るインターフェースの話。 その中で今までは Mutexを1つしか使用していなかったので handle -> Mutex が一意に対応していました。 今回拡張に伴い、Mutexが3つほど必要になりました。 で、handle…