chintaro3の日記 

基本、チラ裏です。書いておくと頭の中が整理できますゆえ。

日本語プログラミングのこと

 
有名どころでは「なでしこ」とか。
http://nadesi.com/
 
使ってみたことがあるのだけれど、最大の欠点は、なでしこを1日中使っていると、自分までそれにつられた言語なまりになってしまって、普段の会話まで「なでしこ弁」になってしまうこと。いやマジで。大阪へ行くと大阪弁になっちゃうみたいに、なでしこ使ってるとなでしこ弁になっちゃう。これはちょっと困った。
 
ただそれでも、将来的にそういう課題を1つづつクリアしていって、本格的にビジネスに使えるような日本語プログラミングが出来る環境って、やっぱり作っていかなければならないんじゃないか。
 
たぶん東京でずっと仕事をしていたら、そういう発想にはならなかったんじゃないかと思う。けど、田舎の中小企業で仕事をしていると、英語どころかアルファベットすら苦手な人が普通に居るという現実と向き合わなくてはならない。東京のビジネスマンには、アルファベットが苦手な人なんて、見たことが無かったから、正直ショックだったよ。でも、英語が苦手なこと以外は至って優秀なビジネスマン、そういう人も実はたくさん居るんだよね。
 
昔なら、日本語プログラミングなんていうのは、プアなCPUやメモリには処理が重すぎてダメなんて言われていたけど、今は全然そんなことはない。そして今、日本語プログラミングがなぜバカにされるかというと、1番には過去のソフトウエア資産の蓄積が無いから。ひどい話だよね。
 
日本語プログラミングのデメリットは色々言われているので繰り返さない。国際的に云々というのが一番言われる所かな。
なので、あえて日本語プログラミングの良さそうなところを挙げてみる。
 
プログラマーじゃなくても、意味はわからなくても、とりあえず読める。
 これが意外と重要だと思っている。どういう局面でかというと、プログラマーの仕事を専門外の人に評価してもらうとき。プログラマーの待遇の問題は常々言われているが、評価してもらうためには理解してもらわなくてはならない。理解されないものは評価されない。すなわちお金にならない。←イマココ。・・・お金にならないところには人は集まらない。そして日本のソフトウエア産業はジリ貧になっていく。いや、だから、東京は大丈夫なんだよ今のところ。田舎のソフトウエア産業の話ね。田舎でソフトウエア産業が成り立つような世の中にしていかないと、それは単にソフトウエア産業だけの話じゃなくて、地方の地場産業の競争力みたいなものにだって影響してくるはずなんだっていう所がポイント。
 
・本質的な評価がやりやすくなる
 ソフトが解る人なら、だらだら書かれたコードより、重複なく簡潔にかかれたコードの方が優れているという事を理解できる。でも、プログラミングをしない人、苦手な人には、これがなかなか理解できない。そこで生まれてしまうのが、コピペで膨大なソースコードを生産する困ったプログラマ。その方がたくさん仕事をしているように見えちゃうんだから仕方がない。これが日本語だったら、そんなことをだらだら書くことがいかにばかげているか、直感的に解るだろうに。そしてもっとソフトの本質に注力できるようになる・・・はず。
 
・わざわざ日本語のコメントやドキュメントを書き直す手間が多少なりとも省ける。
 「そんなもんかかねーよ」となって久しいんですが、それって後から入ってきた人をどうやって戦力にしていくつもりなんだろう?
 
・ひらがなカタカナ漢字でプログラミングの表現力UP。 
 やっぱこれでしょ。日本人の感覚からしたら、どう考えたってアルファベットだけのドキュメントより、漢字かな混じり文の方が読みやすいし表現しやすい。ソースコードを理解しようとするとき、それは単に数学的な意味を理解すればいいという話だけじゃなくて、それを作った人の意図をちゃんと理解しないと、理解したことにならないと思うんだよね。そういう場面で、アルファベットばっかりの所から「意図」を読み取るというのは、これまた独特のテクニックというか、センスというか、とにかく普通の人は持ってないトレーニングを積む必要がある。この点が、もし日本語だったなら、多少なりとも改善されるんじゃないかな。
 
=================================
今までの日本語プログラミングがイケてなかったのは、英語のプログラミングの骨組みを残しながら表面的な所だけ日本語化した、みたいな所があって、日本語の良さを全然出せてなかった。それじゃぁ勝てない。英語に無い日本語の良さって何だ?と。それってプログラミングに役立てられないのか?と。そういうところをもっと煮詰めないとだめなんだろう。
 
というわけで、シメはこちら。

あたし、FizzBuzz --- Site Untitled
http://www.undefin.net/diaroid/2009/0322.html#section1