LLとOO
正直、C なんかを書いていると、変数に型があって、いちいちそれをかかされることについて、(LL的な意味で)「重いなぁ」とはあんまり思いません。もう「どっちでもいいじゃん」って感じ。Perl と C を比べたとき、静的型とか動的型とか大して「軽さ」に影響してないよね?、と思います。*1
が、C# とか C++ とかを使っていると、静的型があるのが苦しくて苦しくて仕方がない。もう、「こんなにも・・!!、こんなにも苦しいのならば型などいらぬ!!」(by *「ふっかつのじゅもんがちがいます。」さん)ってくらい苦しくて苦しくて仕方がありません。
これは単純にポリモーフィズムのお話で、静的型付け というよりは、nominal subtyping が脳のリソースを大きく引っ張っていく割に、作りたいことの本質ではないから。動的型付OOPLとか OCaml*2 のような、structural subtypingのほうが ぜんぜん Lightweight に感じます。
ここら辺は、イルカとサメとイクチオサウルスは、同じような機能を持つけれど系統は全然違う、な、ジレンマと言えば解りやすいかしら? イクチオサウルスは実装継承としてトカゲさん達の仲間という継承木の中にいるけれど、「イルカのように泳ぐ」を必要とする文脈では「イルカのように泳ぐ」型から派生されていなければいけない、というヤツです。(動物ネタで喩えるのはOOP説明の 禁則事項だったりしますが、ゆるして(^^; )
「脳への軽さ」にはいろいろは手法がありますから、こういう結論は乱暴ですが、 LL と 非LL というのは、OOP が台頭してきてからこそ強く意識するようになったんじゃないかしら?nominal subtyping のあまりの苦しさ が対比に意識せざるを得ないコントラストを与えたんじゃないかしら?、と勝手な想像をしています。
以上、あくまで私個人の印象のお話でした。