香川研究室について
ショートバージョン
香川 考司
教員紹介
- 香川 考司 (かがわ こうじ)
香川大学 創造工学部 情報コース
- 専門分野
プログラミング言語(コンパイラー・ツール・ライブラリー)
プログラミング学習支援システム
- 担当授業
例えると…
- コンピューター ➡
魔法のツエ
- プログラム ➡
呪文
- プログラミング ➡
呪文を組み立てること
- プログラミング言語 ➡
呪文体系
- コンパイラー ➡
呪文を解釈する呪文
- ライブラリー ➡
呪文の部品集・魔導書?
- 学習支援システム ➡
魔法使いの弟子養成システム
プログラム
コンピューターに与える手順・指示のまとまり
- 一つ一つの指示は、実はとても単純である
- めちゃくちゃ速くて、間違えない、忘れない
プログラムの組立て
プログラムの組立ての基本は
順次・反復・分岐の 3 つである。
これだけあれば“何でも”できる
プログラミング言語
それだけで大きなプログラムを作るのは難しい。
そこで…
- 指示のまとまりを部品化することで、
さらに複雑な指示を組み立てる
部品化の考え方の違いによって、たくさんの種類のプログラミング言語がある
香川研究室の研究テーマ
- プログラミング言語(ツール・ライブラリー)
- プログラミング学習支援システム
今後のプログラミング言語は?
- 組み立ての基本の理解の必要性は変わらない
- 日本語や英語などの自然言語よりも圧倒的に簡潔に書ける
- 部品化はますます大事になる
- AI
が作成したプログラムを読解する必要がある
- ボイラープレート(何度も繰り返されるお決まりの部分)は少ないほど良い
- 検証や証明が当り前になる
- プログラムの細部を理解しなくても正しさが保証される、例えば
- どんな順番・タイミングでイベントが起きても、正常に反応する
- 前のバージョンより性能が圧倒的に良いが、実行結果は変わらない
のような証明が一般的になる
やってみよう
香川研究室の展示「お絵かきプログラミング」では、
順次・反復・分岐
を使って、コンピューターに規則正しい絵を描かせる体験をします。
Processing という言語を参考にして、お絵かき用の機能を部品化しました。
興味のある人は…
以下のリンクへ進んでください。