Rubyによる日本語プログラミング

 「Rubyで日本語の文字列をあつかうのは十八番じゃないですか。何をいまさら」と思った方、ちょっとまってください。文字列処理として扱うのじゃなくて、コードそのものが日本語で書けないかという話です。
 昨日、S2Daoで日本語のカラム名が扱えるかというブログ記事(2005-12-20 - kanagの日記)を読み、「メソッド名とかが日本語ってのも悪くないな」と思ってしまいました。ということで、Rubyでもできないかとやってみました。

 ↓検証コード

class Cテスト
  def 言う
    print "ハローワールド"
  end
end

てすと = Cテスト.new

てすと.言う

ruby 1.8.2 (2004-12-25) [i386-mswin32]で検証しみたら、動きました

 クラス名が「Cテスト」ってなってるのは、Rubyのクラス名はConstantじゃないとダメだからです。Rubyは頭が半角英字の大文字のものを定数とするため、しょうがなく「ClassだからCでもつけよう」ということで、つけました。
 硬派プログラマには気持ち悪いコードですが、なんとなく読みやすいような気がします。というか変数名なんかのために英訳することを考えてない仕様書をもらったときこれは使える気がします。



 ちなみにいつも英訳に困るのは「区分」です。VBでDBをいじるのを生業としている人が多用するような気がします。「登録区分」とか「削除区分」とか、意味を濁しまくり。