Entries from 2008-12-01 to 1 month

Google Test の EXPECT_EQ でエラー時の printer 定義したい

Google Test の EXPECT_EQ でエラー時の printer 定義したいなあ。

2008年 書籍売り上げランキング ベスト5

2008年にこの日記経由でよく売れた本を集計。特色が出て面白かったので紹介。(ネタ元:2008年度 書籍売り上げランキング ベスト20 - 情報考学 Passion For The Future) 1位 最新脳科学が教える 高校生の勉強法 最新脳科学が教える 高校生の勉強法 東進ブッ…

少し前からQuickSilverが起動しない

osx

なぜだ。

零除算のために theVM を渡すのをやめる

零除算が起きる可能性があるところに theVM を渡す。そして実際に起きた場合に theVM->raise(...) とする方法をやめた。零除算が発生した場合に VM が正しく例外を上げられる状態でない場合もあるし、処理が追いづらい。 少し面倒だが例外が起きたかどうかの…

読み返しの年

幻惑の死と使途―ILLUSION ACTS LIKE MAGICを読み返す。今年は読み返しの年でもあった。読んできた本が自分の何%かを作り上げているのだと認識させられる。

今日の復習

Database Magnetic Disk 2割 プラッタプラッタ プログラマブル shader 10割 コンピュータとは 0割 記憶の階層の利用 10割 パタヘネ例外 10割

明日・明後日は勉強休む

色々悩んだが明日と明後日は勉強を休むことに決めた。2/365 は大きい気がするがどうだろうね。 主な理由を考えてみたがガキの使いスペシャルが見たいからが大きいな。出来るだけいつもと変わらず過ごしたいのだけどそうもいかないもの。

Quaternions - Realtime Rendering

Quaternions は習ったことがない。困った。こういう場合にどこまで掘り下げるか決めていなかった。さらに最近 Realtime Rendering を読むのが楽しくないと思うようになってしまった。どうにかしないと。 自分のレベルを考えると概要を把握するのに努めるのが…

Break Dependencies - theVM グローバル変数問題

theVM がグローバルなのは良くない。今はしようがないがいずれ改善しようと気付いたので早速直す。 いたるところでグローバル変数 theVM->raise(xxx) などとしていたのを改善。4時間ほど。大変だった。 早速スタックトレースのテストが Fail して面白かった。

AnnotatedPair 導入テスト

ソースコード情報を持つ Pair とそうでない Pair を分けて1ワード節約すれば速くなるのではないか?と思いついたので実験。 →結果は変わらず。コードが複雑になるだけだった。涙をのんで svn revert -R .

パフォーマンスをできるだけ落とさずにスタックトレース

パフォーマンスを出来るだけ落とさずにスタックトレースを表示したい。難問だ。

パフォーマンス測定

VM クラスの一部の関数を virtual にしたのでパフォーマンス測定。

Google Test における鬼車と regex.h 問題

鬼車とregex.h で定義されているシンボルが重複する。DETH_TEST は必要ないのでテストのビルド時に -DGTEST_HAS_CLONE=0 とすることで解決。

今日の復習

貧乏人のデイトレ 10割 記憶階層の利用 9割 I/Oコスト比較 10割 GPUパイプライン 10割 データ格納方法 10割

購入 宇宙兄弟4巻

バスの中で読む。笑いをこらえるのに必死。正確にはこらえていなかったが。宇宙飛行士になりたい。

4. Control Flow Analysis: A Technique

bootstrap Our intermediate representation defined,=>(原因・結果) we can now proceed to develop a technique for deriving the control flow information present in a Scheme program. **==The solution== to the dilemma of section 1 is to use a …

今日の英語 - Control flow analysis in scheme その3

速読の練習。速読はしない。文の構造を意識しつつ読み進める習慣をつける。方法論はTOEFLテスト速読・速聴大特訓 基礎編で。ルールは以下の通り。少し内容が難しくなり定型をつかむのも同様に難しくなってきた。何か良い題材ないですかね?>M氏 * トピック…

自転車

気になるところがいくつかあったので自転車を見てもらう。後輪のシャフトが折れていたらしい。危険なので乗らないでと言われた。年明けに部品が届き次第修理。ふむぅ。困った。 そういえばシャフトが何か分かっていない。

Test Harness で VM をインスタンス化しスタックトレースのテスト

WEwLC で学んだ通りに進める。Test Harness で VM クラスのインスタンス化を試みる。クラス自体が少し大きい。 クラス自体ではなくまずはファイルを分割する。そうすればすくなくとも Build Dependency は減らす事が出来るし平均ビルド時間の向上もするだろ…

Google Test

c++

EXPECT_STREQ で文字列の diff を表示して欲しい。どこが違うか分からない。

うしっ

難しい問題を年越しせずに済んだ。偉い>自分。たまには自分をほめようの法則。

スタックトレース問題解決

問題 VM のスタックは Object の配列であるが、スタックにスタックポインタを push することがある。例えば Call Frame 時など。 この場合 Object* を Object の配列の要素としたい。つまり Object* 型は Object型でもある必要がある。このため Object* のポ…

今日の復習

貧乏人のデイトレ 0割 WEwLC 10割 クラスのメソッドテストできない テスト Harness でインスタンス化できない Adapt parameter/breakout method object パタヘネ 加算 10割

REPL 改善

REPL のエラー表示改善や複数行の入力など細かい改善。それにしても寒い。

Mosh で googletest を使う事に

googletest - Google C++ Testing Frameworkを Mosh で使う事に。 ダウンロード README と samples を見る。 Mosh/gtest-1.2.1 に配置し Mosh に同梱する。 基本的な構造は理解。xUnit 相当のものはある。 5sec 以内にテストが終わらないとエラーというテス…

2008年 ふりかえり

今年最も大きな出来事は自分用の勉強システムを確立した事。ここ数年で一番の成果だろう。将来に渡って効果が続くのが大きい。数年後にふりかえりターニングポイントだったと思うだろう。(詳細は勉強方法を勉強して分かった僕に足りなかった3つのこと) プ…

スタックトレース改善

スタックとレースを出来るだけ安全に出力できるように調整。また psyntax 由来でもユーザーフレンドリな情報を表示するように改善。 dorami% ./mosh r6rs-examples/wiki Condition components: 1. &assertion 2. &who: "cdr" 3. &message: "pair required" 4…

今日の復習

パタヘネ IEEE-754 10割 Intel 浮動小数 10割 リバレッジシンキング 10割 WEwLC クラス大きすぎ 10割 Rasterize 10割

Basic Transforms 続き 任意軸に対する回転 - Real-Time Rendering

Real-Time Renderingの 4章 Transforms。 任意のベクトルを軸とした回転。 ;; r を軸にして origin を phi 回転する (let* ([phi (/ pi 4)] [origin (make-point 2.0 2.0 0.0 1.0)] [r (make-point 0 1 0 1)] [s (orthonormal-axis r)] [t (cross-product r …

お裁縫セット

小学校の頃、家庭科で全員が買わされたお裁縫セット。中身は量的に不要なものが多かった気がする。業者と癒着?