高見知英のかいはつにっし(β)

高見知英のアプリケーション開発日誌 のほか、地域活動などの活動報告ブログ。

日本語で行こう

 http://d.hatena.ne.jp/mahouken/
 先日うちの日記のリンク元に、この方のブログが引っかかったので行ってみました。
HSPでプログラミングをしてるとのことで。あたり判定の式の意味がよく分らないとのことを、数日にわたって書いていました。そこでちょっと、わたしの教えたい虫がうずき出したのでしばらくおじゃましてみたのです。
http://d.hatena.ne.jp/mahouken/20050110
結果、解決したとのことですから、良かったです。わたしも自分なりにわかりやすく解説してみたつもり…です(^^;


 今回は"処理を日本語に訳す"というのが勝因になったようで。
 まあ、基本かもしれませんが、プログラミングにおいて、処理を母国語に直すというのは大切だと思うのです。
まあ、他国語を覚える場合と同じですね。Delphi語だろうと、C語だろうと、母国語とは違う言葉であるのだから、当然と言えば当然です。
日本人が英語を覚えるのと同じように、語順に注意すれば、日本語との相互変換は容易でしょう。少なくとも英語よりは、文節の区切りが明らかなぶん、簡単だと思います。そうしたら、たぶんどんな複雑な条件式も解けるはず。まあ、複雑すぎて表を用意する必要があるときはあるでしょうけど。
どちらにしても、熟練してきたらいちいち母国語に直すという処理は無駄になるでしょう。でも、最初のうちはそうでもしなければ難しいです。
 そう考えれば、プログラム言語の多くは簡単です。だって、単語の数は英語なんかのそれよりはずっと少ないし、語順もほぼ完全に固定されている(わたしはあんまり論理型言語などを知らないので、それらとなるとちょっと違うかもしれませんが)。基本は英語だから、英語がある程度読めるのならば、各単語も覚えやすい。そういう意味では塾なんか要らないくらい簡単ですね*1(^_^;


 というわけで、とりあえず難解な処理を行いたいときや、どこかからコピペしてきた複雑なコードを解析する際は、無理せず母国語にいったん翻訳することが必要なんじゃないかと思うのです。Exciteのような翻訳サイトはありませんからね。地道な作業にはなりますが。

 日本語とプログラム言語の相互変換が要らない言語として、「ひまわり」などがありますね。実際には句読点がやたらと多かったり、変換処理が要らないとは言いにくいんでしょうけど。
今回のケースを見ると、やっぱりそういう言語のほうが初心者向きってことになるのかな…。それとも、あらかじめプログラム言語も現実世界では誰も母国語としていないだけの、もう一つの言語と言う前提があれば、なんだって初心者向け…と言ってもいいのかな。

*1:何だかどこかで書いた気もしますが、気にしない