« Kanasan.JS prototype.js CodeReading#3 | メイン | [.inputrc]は[readline]のなんなのかとその調査過程で得られたもの »

Rubyでtypoしたときに「ひぎぃ」と言わせる

但しMacOSX限定。
#小文字で始まるtypoの場合
#  *a => 第1引数     : typoメソッド名
         第2引数以降 : typoメソッドの引数
#  &b => typoメソッドのブロック
def method_missing(*a, &b)
  `say higgy`
end

#大文字で始まるtypoの場合
#  a  => typoクラス名
class Module
  def const_missing(a)
    `say higgy`
  end
end
ついでに、数値の場合。
class Fixnum
  def inspect
    `say higgy`
  end
end

class Float
  def inspect
    `say higgy`
  end
end
こちらは数値の出力を全て上書きするみたいだ。
しかもirb限定らしい。
(inspectがirbの機能)
計算結果がでなくなる副作用あり。
さらに、ついでに作ってみた。
class Fixnum
  def inspect
    puts 'あなたはこんな簡単な計算にもirbを使うのですか。なんてお馬鹿さんなんでしょう...。'
  end
end

class Float
  def inspect
    puts 'あなたはこんな簡単な計算にもirbを使うのですか。なんてお馬鹿さんなんでしょう...。'
  end
end
かなり腹が立つ。
追記
日本語がまともに表示されなかった...。

トラックバック

このエントリーのトラックバックURL:
http://www.kanasansoft.com/cgi/mt/mt-tb.cgi/89

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

Google