ロボカップジュニア2009 兵庫ブロック大会 を見学して
私は、今週の日曜日から出張で3日ばかり横浜に行っておりました。出張の出かけに、豊岡市総合体育館で開催されていた「ロボカップジュニア2009」の兵庫県大会を見学しました。思ったより盛況で、出場者も見学者も多かったです。小学4年生がノートパソコンとロボットを操る姿に、ちょっとしたカルチャーショックを受けました。会場に行って分かったのですが、知り合いのお子さんも2名出場されており、少しびっくりしました。
弊社では、プログラミング教室を運営しておりますが、子ども達のプログラミングに対する理解と感性がどの程度のものか非常に興味があります。Pascal(パスカル)言語の設計者として有名なN.Wirth(ワース)の言葉に次のものがあります:
プログラム = データ構造 + アルゴリズム
データ構造とは「概念」と近い概念なので、子ども達でも年齢相応の理解が可能と思われます。データ構造はメモリに記憶されアルゴリズムに利用されると言う事実もそう難しくないでしょう。一方、アルゴリズムですが、Prolog(プロローグ)言語の設計者の1人、Kowalski (コワルスキー)の言葉に従えば:
アルゴリズム = 論理 + 制御
と分解できます。しかし、よく使われているプログラミングの言語スタイルでは論理と制御が一体化されています。これらの言語スタイルは手続き型言語と呼ばれていますが、プログラミングは非常に複雑です。ここに来た子ども達は、おそらく手続き型のプログラミングを行っていないでしょう。(これは、あくまで私の推測です)。
お子達は、論理型のプログラミングをしているのではないかと私は思っています。論理型プログラミングの場合、論理と制御は完全に分離しています。論理とは「問題の記述」、制御とは「計算方法」を意味します。そして、制御(計算方法)をパターン化してしまえば、お子達のプログラミングは論理だけでアルゴリズムを作れます。ロボットの置かれている状況はセンサーから逐次入力され、その入力値に応じて異なった制御パターンを選択し適用する。これを記述するのが論理プログラミングです。・・・と、こんな感じではないでしょうか。
この解説が当たっているかどうか、本当に興味があります。私には5歳になる子どもがいます。今年の夏休みは彼とロボットプログラミングに興じたいと思っています。私の予想が当たっているか否か、また、ここでご報告します。 いずれにしても、ゆとり教育、少子化、理系離れ、の折、ここに集まっている子ども達は、貴重な日本のハッカー候補生達です。子ども達が立派なハッカーになった頃、いったいどんな日本になっているのでしょうか。
未来のハッカー達に乾杯!
コメントする