カテゴリー別アーカイブ: リーディングコード

wp-cron を調査してみる

wordpress に wp-cron という機能が存在するのですが一体どんなものなのでしょうか。一見奇妙なことですが置いてあるパスは wordpress コンポーネントの最上位である公開されているディレクトリに存在します。
今回はこの wp-cron.php の内容を確認してみることにします。 続きを読む wp-cron を調査してみる


ndenv の初期化スクリプトが何しているか追いかけてみる

node のバージョン管理ツール ndenv をインストールすると初期化スクリプト内部に下記のコマンドを追加します。

せっかくなので下記のコマンドがどのように解釈されるのかというところを追ってみることにしました。
検証は osx 上で実施しています。各環境で差異があると思われますので注意してください。 続きを読む ndenv の初期化スクリプトが何しているか追いかけてみる


phpの配列はどのようにして初期化され実行されるのか

概要

phpなどのLLは、記述するだけでコンパイルなしに実行されますがその中身はどうなっているのでしょうか。
今回は配列を例にとって、実際にphp処理系をおってみます。
主に字句解析、構文解析の実装について順を追って解説していきたいと思います。 続きを読む phpの配列はどのようにして初期化され実行されるのか


phpのcount関数の実装を見る

ご無沙汰しております。
今日は掲題のようにcount関数の実装を見て行きたいと思います。

概要

phpの開発を行ったことがある方であれば、下記のようなコード見たことあると思います。

$something = array('a', 'b', 'c');

for($i=0; $i<count($something); $i++) {
 // do something
}

また下記のようなコードも目にすることがあると思います。

$something = array('a', 'b', 'c');
$count = count($something);

for($i=0; $i<$count; $i++) {
 // do something
}

これらのコードどちらが効率的なのでしょうか。
なんとなく後者のほうが効率が良いようなことは想像に難しくないと思います。
でも、はっきり前者は悪だと断言できる方は実は少ないのではないでしょうか。 続きを読む phpのcount関数の実装を見る


Cのソケット実装を追う

最近TokyoTyrant、TokyoCabinetに触る機会があって、その実装レベルまで込み入った話に接する機会があった。
本日は最近気になっているTokyoTyrant, TokyoCabinetに関するモジュールのソースを追って、C言語で通信をどのように実装しているのかを確認してみたいと思います。 続きを読む Cのソケット実装を追う