ゼミ・研究室紹介(2019年度以前)

プログラミング言語とコンパイラ―新しい言語を創る―(情報科学部 コンピュータ科学科 佐々木晃研究室)

  • 2007年06月07日
ゼミ・研究室紹介(2019年度以前)

仲間と試行錯誤する意義

情報科学部では、4年生は研究室に所属し卒業研究を行います。佐々木晃研究室では、前期には学部授業で学んできたプログラム言語などのより深い理論について勉強するために、課題本や外書の輪講を実施しています。発表者がレジュメをあらかじめ作成し、授業の場で発表、他の学生から質問を募ります。さらに佐々木准教授が補足説明などをする流れです。

この日は、プログラミング言語の動作を数学的に説明する『プログラムの意味論』についての輪講で、『命令型プログラミング言語における変数に関する処理や動作』などの項目を学びました。
「プログラミングに興味があり、コンパイラが専門の佐々木研究室を選びました」と発表者を務めた須賀さん。難しい概念を参加者に分かりやすく伝えるために、自作のプログラムを実際に動かしながら説明しました。

「コンピュータという複雑なものを扱うために、情報科学の研究では抽象的な思考が必要となります。そのためにも、大学時代には、数学の問題で悩んだり、仲間同士で議論しながらプログラムを作ったりと、試行錯誤するのが大切」と佐々木准教授。
一人で閉じこもって考えるだけでなく、疑問や考えをぶつけあうことでプログラム構築や研究のためのアイデアにつなげてほしいと期待します。
大学の研究室という学びや探求の場を最大限に生かしてほしいという思いでもあります。

また、目覚しいスピードで技術革新している分野だからこそ、「基礎がとても重要」だと学生たちに強く説きます。
そんな佐々木准教授の口癖は「無理じゃない」。プログラムを作るには、プログラミング言語の習得をはじめ数学の知識なども必要。覚えることの多さや、高度な理論に時にしり込みしそうになる学生を優しい笑顔を浮かべながら、鼓舞します。

  • 佐々木晃研究室の皆さん
  • 映写されるパワーポイント資料を
    見ながらディスカッション

情報科学で生きていく

子供向け教育用プログラミングSABER

子供向け教育用プログラミングSABER

佐々木准教授の専門は「コンパイラとコンパイラ生成系」や「ドメイン特化型プログラミング言語」に関する研究です。
「コンパイラ」とはJavaやC言語などのプログラミング言語と、2進法を用いるコンピュータの頭脳部分CPUが理解するデジタル信号(マシン語)の仲立ち(翻訳)をするソフトウエア。
人間の考えたプログラムを翻訳し、コンピュータが正しくかつ効率的に処理作業するために欠かせないソフトです。

一方、「ドメイン特化型プログラミング言語」とは、特定の分野における特定の目的に用いる言語。経済学や社会学の専門家が予測などに用いるシミュレーション言語がその一例です。
佐々木研究室では、東京工業大学の出口弘教授研究室との共同研究で「子ども向け教育用プログラミング言語SABER」を開発しています。これは、子どもが自然現象などを体験的に学ぶためのシミュレーション言語です。

今年は7人が佐々木准教授の下で卒業研究を行っています。
「専門家でなくても使いこなせるプログラミング言語を作りたい」「シミュレーション言語やコンパイラに興味がある」と志向はさまざまです。
「高校時代から情報を学び仕事にしたいと思っていました」という森川さんのように皆、学部で学んだ情報知識や技術を生かした仕事に就いたり、進学することを目指しています。

卒業論文のテーマは現在各自が選定中。佐々木准教授は「それぞれが、やりたいことを選んでもらいます」と話しますが、論文やプログラム制作をすること自体が目的ではありません。「実験的ではあっても、自分のアイデアを生かし、自分で考えた研究を行ってほしい」

時間が許す限り研究室のドアを開き、学生の相談にも答えている佐々木准教授。
「アドバイスした以上のことを自発的に調べたり、やり遂げたりしてくれることが最もうれしい」
まだまだ発展途上の情報科学という分野に歩みだしたばかりの学生を温かい目で見つめています。