2008-02-01から1ヶ月間の記事一覧

call/cc

d:id:hayamiz:20080221:1203606996に対抗して…。(call/cc call/cc)をrubyで書くとこうなる。下のコードは自分で書いたのだが、未だに完全に理解できた気がしない。 #!/usr/bin/ruby def ccc; yield callcc {|cont| cont}; end ccc do |a| p "aaa" a.call(a) …

Inheritable Attributesについて

元ネタ:http://railstips.org/2006/11/18/class-and-instance-variables-in-ruby Ruby on Railsでの実装:http://www.koders.com/ruby/fid1F286C43B89819E4D009281393E1ECAAC371B700.aspx?s=def#L10クラス変数とクラスのインスタンス変数の中間的なもの。

libpolatskのRubyインターフェース

目的 管理コンソールを作りたい→Rubyインターフェースつくってirbをコンソールにした方が柔軟性高い Ruby Extension一度書いてみたかった デバッグを容易に。プロトタイプをRubyで設計とか libpolatskをWeb系の用途にも使えないかな? 実装にあたって そもそ…

Ruby拡張の作成 using Autotools

extconf.rb(mkmf.rb)で作ったMakefileだとC++標準ライブラリのヘッダーがなぜか読めなくなったり、Autoconfと思いっきり内容がかぶるのでAutotoolsオンリーでRuby拡張を作ってみた。基本的にはruby.hインクルードしてlibrubyにリンクするだけなのだが、Mac O…

Renderingグループ

早速参加した。参考書籍にちょっと加筆してみた。http://rendering.g.hatena.ne.jp/id:senna_hppさんGJです。

アフィリエイト

試験的にamazonとadsenseに登録してみた。収入はnytrの開発費(主に書籍購入費)に当てます。気に入らない人は各自greasemonkey等で対応して下さい。追記: まぁ心配しなくても、収入は一日2セントとかそんなレベルだと思います。ターゲット層からみて、だれ…

Ruby製レイトレーサー: nyyatr

http://websvn.nyaxtstep.com/viewvc.cgi/sandpit/ruby/raytracer作業時間6時間はやっぱりかかりすぎ。画像ライブラリ選定に1時間、RSpecの使い方覚えるのに1時間とかやっぱりおかしい。結局ライブラリは使わずppmを自力で吐いてるしね。 それらしき画像…

今日の作業

いい加減Trac作らねば今日実装した: 設定画面中マウスイベントがとれないためボタン描画がおかしくなるバグ修正 Pixivランキング種類設定の実装 残りTODO: Trac作ってこのTODOごと移動 gemsを使わず、Hpricotごと配布 Pixivログイン処理がなんかおかしい

Queue実装の速度比較

左からNon-blocking Concurrent Queue, Two-lock Blocking Queue, std::queue + boost::mutexです。 縦は、3秒間に5スレッドで同時Push/Popしたカウント。Non-blockingは他の23倍ぐらいのパフォーマンスが出てる。std::queue以外はLockFreeな固定メモリア…

Lock Free Queue完成版

やっと負荷かけても落ちなくなった。詳細書こうかと思ったけどめんどいので適当に概要…結局、freed memoryを参照しても落ちないように自前でメモリ管理をやる必要があったというだけでした。そもそもせっかくLockFreeなコンテナなのに、メモリ管理がlockfree…