Entries from 2009-07-02 to 1 day

Erlang の Record を更新する

gen_server::handle_call の State を構造体で表現しているとして -record(state, {key, value, left, right}). value だけ更新して、reply したい場合がある。今までは {state, State#state.key, myValue2, State#state.left, State#state.right} としてた…

Erlang のエラーメッセージは分かりづらい

kvs

みんな同じ感想を持っているようだが、とにかく分かりづらい。 内部実装がパターンマッチを多用しているからだろうか?

supervisor:start_node で子プロセスをいくつも動的に追加する

kvs

色々勘違いしていたので整理。 supervisor:start_node で子プロセスが起動しなかったのは mio_node:supervisor で gen_server:start_link({local, ?SERVER}, ?MODULE, Args, []). していたから ?SERVER が key で register されてしまうので次の起動時に alr…

Erlang でエラー行表示 smart_exceptions

kvs

Erlangで行番号付きでエラーを出力する方法: みかログ を参考にしつつ最新の Erlang で動くように。 devel at 3a91498669996e05a2199bb42df938343b2abec0 from thomasl's smart_exceptions - GitHubから、最新版 Erlang 対応の smart_exceptions を持ってく…