[Ruby] Sleep Sort のをFiber@Rubyで実装
id:gfxさんの記事を読んで大爆笑してしまったので、ついついRuby1.9.2+Fiberで作ってしまいました。
というわけで、メモ。
元ネタ: Islands in the byte stream/常識を覆すソートアルゴリズム!その名も"sleep sort"!
def create_fiber(v) f = Fiber.new do t1 = Time.now while(true) break if Time.now - t1 >= v Fiber.yield(true) end puts v while(true); Fiber.yield false; end end end fibers = ARGV.map{|v| create_fiber(v.to_i) } while(fibers.map{|fib| fib.resume }.any?); end
実行するとこんな感じ。
$>ruby fsleep.rb 5 3 1 4
1
3
4
5
[Ruby][Miyako] Miyako2.1.21リリース
前バージョンのバグ修正版です。サブシーンに移動する際にエラーが起きていた問題を修正しました。
Miyako2.1.21はアップデート必須となっておりますので、お手数ではございますが、アップデートのほどをよろしくお願い致します。
ご挨拶
久しぶりデス。本当に久しぶりデス。
ほとんど何もやってなかったのに(仕事したりさくらのVPSを申し込んでたりしてましたが…)、バグ報告があったのにリリース作業が時間がかかりました。すみません。
というわけで、Miyakoの最新バージョン、2.1.21をリリース致しました。
詳細は、Miyakoメインサイトからどうぞ。
http://www.twin.ne.jp/~cyross/Miyako/
ダウンロードは、RubyForgeからどうぞ。
http://rubyforge.org/frs/?group_id=8246
gemからのインストールも可能です。
gem install ruby-miyako
gem install ruby-miyaok-mswin32