Entries from 2009-01-01 to 1 month

Adobe MAXのセッションでなぜか発表してきた

2009/2/23追記: 発表資料はこちら。最近「何の人かわからない*1」とよく言われ、アイデンティティを喪失しつつある今日このごろ、Adobe MAXというアドビさんのイベントの午後のセッション「出張JUIカンファレンス - Flashはもういらない?」にて、kawa.netの…

文字列繰り返しベンチマーク take 3

これの続き。 なんかかなりjitterがあるみたいでおかしな結果になってるんだけど、アルゴリズムごとの特徴は出てるので。 - Chrome FF3.0.5 FF3.1b2 IE6.0 IE8.0b2 Opera Safari WebKit/r40352 concat_op 32 203 150 747586 453 156 51.5 32 join 36 478 596…

弾さんに言及されたので

まさに同じコードでベンチマーク取ってる途中で (や、まじで) エントリを書かれてしまった。なんで気づかなかったんでしょうね。こういうの。ここで言及していただいてることなんですけどね。ちなみに。あと new Array(n).join(s); はどうかってブクマコメを…

昔の機械の音声合成についてのまとめ

追記: 手元のデータシートに従って、YM3526について言及。正式にはCSM音声合成モードでした。 追記2: PC-6001mkIIに内臓されているのはフォルマントボイスシンセサイザーのμPD7752でした。なんか今日話に上ったので。 ファミコンのサウンドチップ *1 にはDi…

文字列繰り返しベンチマーク take 2

追記: もっとよいアルゴリズムについて教えてもらいました (1, 2)。新しい結果とコードはこちら。TraceMonkeyの結果が不正確だったので取り直した件ですが…。速くはなったけど、あまり変わらず。という残念な結果に。 Chrome FF3.0 FF3.1b2 IE6 IE8 Opera9.6…

JavaScriptでExcelのドキュメントを生成してみた

時間がないのでまだPoCの段階だし、手短に。MS ExcelとかWordとかいろんなマイクロソフト製品の文章ファイルのバイナリ形式は「OLE2 Compound Document」というファイルシステム的な構造を持ったコンテナがベースとなってまして、昨日今日で、これを作ること…

同じ文字列のn回繰り返しを作る最速の方法を探求してみた

注意: FF3.1b2の結果が不正確です。取り直したのはこちら。ちょっとした事情により、ある文字列のn回繰り返しを作る関数 (PHPでいうところのarray_repeat(), Perlで言うところの「"..." x n」、RubyやPythonで言うところの「"..." * n」) を高速に実装しなけ…

ブロック構文ローカルな変数宣言のへんなところ

int main(int, char**) { for (static int a = 3; --a;) {} // これは通る for (int a = 2; int b = --a; ) {} // キモすぎるがこれも通る if (bool b = true) {} // これも通る struct foo { foo(int) {} operator bool() { return false; } }; if (struct …