プログラミングとかDSLとか

各所で話題になっているので反応してみる.
南米発のツールがIT業界に与えるインパクト | 日経 xTECH(クロステック)
プログラマはもう要らない?、南米発のアプリ自動生成ツール | スラド IT

まぁ普通に解釈すれば要するにコード生成までサポートしたDSLなツールであり,それほど珍しいものでもない.…という書き方はいささか醒めすぎの感はあるが,それでもはやりこの文章は煽りすぎだろうと思う.

私は概ね/.のこのコメントに同意で,このツールが世界を変えるか,というと,そんなことは無いと思う.このツールが数多くのプログラマを廃業に追い込めるなら,MetaEditやRhapsody,もしくはVisual Studioが既にそれを成し遂げている.

この手のツールは,ターゲットのドメインを広げれて記述能力を高めれば高めるほど,ツールが難解になり,生成されるコードも質が低くなる傾向にある.ドメインを絞れば分かりやすくなり生成コードも最適化しやすくなるが,実現出来ることが限られる.両立させようとするとツールが高価になる.記事からは,バックエンドは上手く出来ている一方で,フロントエンドは実用レベルに無い,ということが読み取れる.

とはいえ,これだけおおっぴらに取り上げられるからには,企業情報系にターゲットを絞り,うまくバランスを取って設計されたツールなんだろうと思う.一応チェックしとくべきか.

DSLツールは自動コード生成とかコーディングレスとかいう言葉をよく煽り文句に使うが,コーディングは不要になってもプログラミングという行為そのものが無くなることは無い.レイヤーが上がるだけである.しかし,設計レベルの問題が実装レベルまで持ち越されて何を作ってるのか分からなくなると言った,ありがちな混乱を防ぐことが出来る.個人的には,コード生成そのものより,役割分担がはっきりして混乱を防げることの方が,効果としては高いんじゃないかと思う.

それはともかく,しかしなんだ,なんていうか,クマー (AA略