Entries from 2008-12-01 to 1 month
Google Test の EXPECT_EQ でエラー時の printer 定義したいなあ。
2008年にこの日記経由でよく売れた本を集計。特色が出て面白かったので紹介。(ネタ元:2008年度 書籍売り上げランキング ベスト20 - 情報考学 Passion For The Future) 1位 最新脳科学が教える 高校生の勉強法 最新脳科学が教える 高校生の勉強法 東進ブッ…
なぜだ。
零除算が起きる可能性があるところに theVM を渡す。そして実際に起きた場合に theVM->raise(...) とする方法をやめた。零除算が発生した場合に VM が正しく例外を上げられる状態でない場合もあるし、処理が追いづらい。 少し面倒だが例外が起きたかどうかの…
幻惑の死と使途―ILLUSION ACTS LIKE MAGICを読み返す。今年は読み返しの年でもあった。読んできた本が自分の何%かを作り上げているのだと認識させられる。
Database Magnetic Disk 2割 プラッタプラッタ プログラマブル shader 10割 コンピュータとは 0割 記憶の階層の利用 10割 パタヘネ例外 10割
色々悩んだが明日と明後日は勉強を休むことに決めた。2/365 は大きい気がするがどうだろうね。 主な理由を考えてみたがガキの使いスペシャルが見たいからが大きいな。出来るだけいつもと変わらず過ごしたいのだけどそうもいかないもの。
Quaternions は習ったことがない。困った。こういう場合にどこまで掘り下げるか決めていなかった。さらに最近 Realtime Rendering を読むのが楽しくないと思うようになってしまった。どうにかしないと。 自分のレベルを考えると概要を把握するのに努めるのが…
theVM がグローバルなのは良くない。今はしようがないがいずれ改善しようと気付いたので早速直す。 いたるところでグローバル変数 theVM->raise(xxx) などとしていたのを改善。4時間ほど。大変だった。 早速スタックトレースのテストが Fail して面白かった。
ソースコード情報を持つ Pair とそうでない Pair を分けて1ワード節約すれば速くなるのではないか?と思いついたので実験。 →結果は変わらず。コードが複雑になるだけだった。涙をのんで svn revert -R .
パフォーマンスを出来るだけ落とさずにスタックトレースを表示したい。難問だ。
VM クラスの一部の関数を virtual にしたのでパフォーマンス測定。
鬼車とregex.h で定義されているシンボルが重複する。DETH_TEST は必要ないのでテストのビルド時に -DGTEST_HAS_CLONE=0 とすることで解決。
貧乏人のデイトレ 10割 記憶階層の利用 9割 I/Oコスト比較 10割 GPUパイプライン 10割 データ格納方法 10割
バスの中で読む。笑いをこらえるのに必死。正確にはこらえていなかったが。宇宙飛行士になりたい。
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 …
速読の練習。速読はしない。文の構造を意識しつつ読み進める習慣をつける。方法論はTOEFLテスト速読・速聴大特訓 基礎編で。ルールは以下の通り。少し内容が難しくなり定型をつかむのも同様に難しくなってきた。何か良い題材ないですかね?>M氏 * トピック…
気になるところがいくつかあったので自転車を見てもらう。後輪のシャフトが折れていたらしい。危険なので乗らないでと言われた。年明けに部品が届き次第修理。ふむぅ。困った。 そういえばシャフトが何か分かっていない。
WEwLC で学んだ通りに進める。Test Harness で VM クラスのインスタンス化を試みる。クラス自体が少し大きい。 クラス自体ではなくまずはファイルを分割する。そうすればすくなくとも Build Dependency は減らす事が出来るし平均ビルド時間の向上もするだろ…
EXPECT_STREQ で文字列の diff を表示して欲しい。どこが違うか分からない。
難しい問題を年越しせずに済んだ。偉い>自分。たまには自分をほめようの法則。
問題 VM のスタックは Object の配列であるが、スタックにスタックポインタを push することがある。例えば Call Frame 時など。 この場合 Object* を Object の配列の要素としたい。つまり Object* 型は Object型でもある必要がある。このため Object* のポ…
貧乏人のデイトレ 0割 WEwLC 10割 クラスのメソッドテストできない テスト Harness でインスタンス化できない Adapt parameter/breakout method object パタヘネ 加算 10割
REPL のエラー表示改善や複数行の入力など細かい改善。それにしても寒い。
googletest - Google C++ Testing Frameworkを Mosh で使う事に。 ダウンロード README と samples を見る。 Mosh/gtest-1.2.1 に配置し Mosh に同梱する。 基本的な構造は理解。xUnit 相当のものはある。 5sec 以内にテストが終わらないとエラーというテス…
今年最も大きな出来事は自分用の勉強システムを確立した事。ここ数年で一番の成果だろう。将来に渡って効果が続くのが大きい。数年後にふりかえりターニングポイントだったと思うだろう。(詳細は勉強方法を勉強して分かった僕に足りなかった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割
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 …
小学校の頃、家庭科で全員が買わされたお裁縫セット。中身は量的に不要なものが多かった気がする。業者と癒着?