最近の雑誌・Webサイト等の記事ではライトウェイトをもてはやす風潮が多いようです。しかし、そこにエンジニアリング観点での検討があまり見られないのは問題と思います。
行数の比較、意味ありますか
日経ITプロフェッショナル誌2006年1月号の記事「ライトウェイト・ランゲージを使いこなす」に、JavaとPerl、PHP、Python、Rubyで文字列を切り出すプログラムの行数を比べている例がります。いずれも「Javaよりこんなに短い」ということを示すものですが、LLの各プログラムは関数もクラスも定義せずに行数を短くしているのに、Javaはimport文、class宣言、mainメソッド宣言まできっちり記述して行数を稼いでいます。記事の例題のようなワンライナーな処理ならともかく普通の規模のプログラムを書くならスクリプト言語だって関数やクラスといったモジュール構造をとるのですが、そこを除いていかに短く書けるかという比較には恣意的なものを感じます。