Entries from 2010-01-01 to 1 month

Erlang Common Test でストレステスト

テストグループ定義に、[repeat_until_any_fail, forever] と書いて一晩中動かしておけば簡単なストレステストになる。

Mosh JIT のバグつぶし

(mosh jit compiler) ライブラリの invoke のタイミングバグ修正 --enable-jit オプション JIT コンパイラの再帰バグ修正 REFER_GLOBAL gloc の場合コード追加。

Scheme コードバトンまとめページ

バトン参加表明中 emasaka さん[done] leque さん[done] Kazuhiro MUSASHI (kazu634)さん[done] naoya_t さん @nkoguro さん(2月ならOK) Scheme id:higepon: 第1回 Scheme コードバトンのお知らせ gist: 273431 - GitHub id:yad-EL さん: Schemeコードバトン…

第1回 Scheme コードバトンのお知らせ

Scheme のコードをバトンのように回していき面白い物ができあがるのを楽しむ遊びを始めました。 盛り上がるようであれば次回 Shibuya.lisp で成果を発表したいと思っています。 もしご興味のある方がいらっしゃいましたら、コメントで表明していただくとバト…

Schemer と CLer の蔑称

garaemon さんの表現が面白い。 Schemer → 再帰バカ CLer(Common Lisper) → 副作用バカ 愛すべきバカだなあ。http://twitter.com/garaemon/status/7588113347

Mona に lwip-1.3.1 移植しよう

開始 12:50 contrib/ports/unix/sys_arch.c をベースにする。 事前調査により mutex, condition, thread_self() などが必要な事が分かっているので用意してある Makefile 空の main.cpp を用意する。 flymake 用に check-syntax ターゲットを用意する。.emac…

今日の Mona

Date::nowInMsec() 実装 uint64_t の割り算コードを FreeBSD から移植 Date クラスのドキュメント syscall_mthread_self() 実装

Shibuya.lisp に向けて Scheme コードバトンするのはどうか?

次回 Shibuya.lisp のネタ。「英単語覚えるスクリプト」のように短くていじりやすいコードを github に置いてコードバトンをするのはどうかな。ルールは2つ 自分がこれだ!と思える変更を2日以内にコードに加える。人に優しい変更なら何でも良い。1文字の変…

英単語覚えるスクリプト

Shibuya.lisp の発表で少し触れた、英単語覚えるスクリプトを改善した。毎日使っていて単語量が増えたので誤り回数が多い物順に出題する事にした。 (import (rnrs) (mosh control) (mosh) (match) (mosh file) (srfi :8) (only (srfi :1) first second)) (de…

今日の復習

正しい2分探索

JIT コンパイルが再帰して困った

JIT コンパイラが Scheme で書かれているので、JIT コンパイラ自身も JIT コンパイルされる可能性があることに気付いた。そうすると 手続き A を JIT コンパイルしようとする。 JIT コンパイラ中の手続き B が閾値を超えて call される。 手続き B を JIT コ…

今日の復習

モデルにデザインパターンはめる refactoring toward deeper insight 問題の正確な定義 projection

年末から悩んでいたバグを修正

手続きの呼び出し回数が閾値を超えた場合に JIT コンパイラが発動する。という機能を組み込んだところ、エラー手続きが再帰してスタックがガンガン拡張する不具合に遭遇。 調べていくと (current-exception-handler) の値がおかしくなる事が判明。この時点で…

ハイハイ開始

ひげ太が7ヶ月と1日でハイハイを開始した。まだなめらかには動けず失敗もすることも多いが前に進もうという気持ちが見えて興味深い。ハイハイしまくりというわけではなく、本当に興味のある物が目の前にあると始める。例えば、ThinkPad、携帯電話、テレビの…

今日の復習

重複しない M 個の整数選ぶ projection 4割 入出力I/F

Erlang で Consistent Hashing 実装

自作 memcached-client に必要だったので、ConsistentHashing - コンシステント・ハッシュ法 の解説を参考に Erlang で Consisten Hashing を実装した。 環状の配置は ETS の orderd_set を利用している。 レプリカを挿入しているところと get_node で next,…

epoch など

結局 PIT のドキュメントを読んだが理解できたようなそうでないような感じ。 とりあえずやるべき事は 1970/1/1 からの経過時間を nano seconds で保持 IRQ なり、counter なりで補正 の 2 つ。 というわけでシステム起動時に RTC から現在時刻を読み出し epo…

今日の復習

クイックソート モデリングのコアに何使う プロセッサの入出力 I/F 3割 projection 5割 契約による設計

Mona で microsecond 精度で時刻を知りたい

OSDev.org View topic - RTC and microseconds での回答が良くまとまっているので自分用に日本語でまとめておく。 RTC RTC の読み出しは秒フィールドまでしかない。 IRQ を使う方法 RTC を periodic interrupt 設定にする事で 2Hz - 8192Hz で割り込みを起こ…

今日の復習

seam model プロジェクトがオブジェクト指向じゃない ループの不変表明 modules distributed database

今年は写真もがんばろう

デジタル一眼レフカメラ E-510 を持っているのだが、付属レンズが室内撮影には暗すぎる事が分かってきた。 しかし明るいレンズは4-5万するので簡単には手を出せないなあ。

大根

ひげ太は実家でもらった大根を食べたようです。

アルゴリズムイントロダクション 7 章「クイックソート」

数学的基礎とデータ構造 (アルゴリズムイントロダクション)の 7章 7.1-1 ノートに描いた。 7.1-2 r が返る。 (r + p)/2が返るようにするにはどうしたら良いだろう。 答えが見つからない。 7.1-3 n - 1回の比較が起きる。 7.1-4 比較を逆にすれば良い。 7.2-1…

parameterize 周りのバグに悩まされる

原因究明中。ひげ太は上の歯が生えてきたせいか若干機嫌が悪い。

今日の復習

domain model supple design キャッシュの基礎 同確率で一行選ぶ closure of operation parallel and distributed DB domain specific language 挿入ソート