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

Wikiquoteを適当に1つ表示するスクリプト

Wikiquote.orgから、適当な格言・箴言・引用をランダムに引っ張ってきて表示するRubyスクリプト「wikiquote」を書いた。 #!/usr/local/bin/ruby require 'open-uri' require 'hpricot' def quote(year,date) q = [] doc = Hpricot(open("http://en.wikiquote…

Wirbleを1.9.1で使う

irb環境で補完やハイライト表示をしてくれるWirbleというライブラリをgemで入れてみたら、1.9対応していなかった。どうもこのライブラリは放置状態が長いらしく、作者とは別にあちこちにパッチやfork版があるみたいだ。そういうことはお構いなしに、ダイレク…

UbuntuにRuby 1.9.1を入れてみた

Ruby 1.8.6は消してRuby 1.9.1に移行することにした。「sudo apttitude remove ruby」とか、そんなコマンドを叩く日が来るとは。Rubyを消そうとすると日本語インクリメンタルサーチのmigemoがRubyに依存しているので、一緒に消えてしまうことが分かった。ま…

Cの拡張ライブラリを作ってみた

Cを使った拡張ライブラリが簡単に書けるという噂があるので、昨日つくった「各桁に1から9が必ず1度だけ現れる」ということを判定する関数の部分だけ、RubyからCに置き換えたら高速化するかどうか試してみた。元のコードは、以下。 def has9digits? (num) dig…

9桁の計算問題

2乗した結果、1から9までの数字を1つずつ含む9桁の数字になるような数字にはどんなものがあるか、という問題を考える。Rubyで次のように書いてみた。 def has9digits? (num) exit if num.to_s.size >= 10 digits = num.to_s.split(//).sort.join digits == "…

Croud完成

クラウド・コンピューティング時代に適した、というよりもクラウドそのものを体現したプログラミング言語「Croud」を作ってみた。 クラウドそのものを利用した可読性の高い文法 草原に寝そべって空を見上げているかのような、心和むソースリスト デフォルト…