ruby使ってて

会社の端末では、cygwinruby(1.8.4)、activescriptruby(1.8.7 mswin)、そして、linux上でruby(1.8.?)を使ってるんだが、その全てで動くようなコードを書こうと思うと、かなり気を使う。
(いわんや1.9をや)
で、REEというものを見つけた。もうforkしすぎ。
http://www.rubyenterpriseedition.com/
windows上で、shift-jisの文字列を加工する作業は圧倒的にactivescriptruby(というよりmswin版rubyが)便利で、自分の思考を形にするための最適な道具として君臨している。半角カナを正規表現で切り刻む処理とか、一番ストレス無く書いて動かすことが出来て大変素晴らしい。互換性とか意識する方が負けですよ。やりたいことをできるruby環境を探せばいいんですよ。と、本気でそうとは思っていないけど開き直って、rvmみたいなものを見て「そうか、こうやって異なるバージョンのrubyを共存させて切り替えて使えば便利なのか!」と思った瞬間に、ふと気づく、なんでこう、真打がでてこなくて3枚目だらけなんだろう?と。
自分にとってはrubyは、「思考を書きやすい」言語だったはずなんだが、いつの間にか「書き方に気を使う言語」になっていた。というか、自分が書いたコードを他のruby処理系に移植するのは苦痛な瞬間もあります。
同じ事はpythonでも言えて、さっき言った半角カナで文字列を加工するような処理をやろうと思うと、sjisで読み込んで、unicodeに変換して、grep用の文字列をunicodeで作って、出力はsjisに戻して、、あぁ、WAVEDASHとか意識してcp932のコードは個別処理しないといかん、とか、慣れの問題だとは思うけど正直、メンドクサイ。もうpython2は駄目だ、と思ってpython3で書こうとするとあまりに違いすぎて涙が出たり(これは知識が不足していることによる)


javaなんかもそうなんだけど、文法が進化する言語というのは実は使いにくい。
これは進化に振り落とされた弱者の言い訳かもしれんけどね、互換性わかりづらくなるとだんだん使うのが億劫になってきます。
若かりしころ、いつまでも古いスタイルのc言語を書く人のことを理解できなかったんだけど、今ならわかる。そうか、これが年をとったということなのか。