森畑研究室
東京大学教養学部 学際科学科 総合情報学コース
東京大学大学院総合文化研究科 広域科学専攻 広域システム科学系

本研究室の目標とアプローチ
 私たちは、あらゆるところにある情報機器やソフトウェアの恩恵を受けて暮らしています。これらを駆動するためのプログラムの作成には、これまでは専門的な修練を積んだ人による手作業が必要でしたが、近年は大規模言語モデル(LLMs)に基づく自動プログラミングによって一変しつつあります。ここ数年は、以前とは全く異なる規模と速度で、ソフトウェア開発が自動化てきています。
 この変化は、変化の劇的さを除けば、本研究室としてはある程度予想していたことでした。本研究室では以前から、具体的なプログラム文面の作成(=コーディング)の大部分は、仕様を満たす論理構造の特定(=プログラミング)とは独立であり、本質的には自動化できるはずだという観点から研究を進めていました。
 LLMsの発展によって、プログラミングの研究は不要になったのでしょうか? 私はそうは考えていません。よく見ると、まだまだ不十分なところはあります。
 以上の状況をふまえつつ、本研究室では、プログラミングの基礎理論、およびその応用について研究しています。 本研究室が特に得意とするアプローチは以下のものです。
参考:
森畑による講演動画 (2022年)
森畑による古い講演動画 (2013年)
よくある質問
高いプログラミングスキルが必要ですか?
プログラミングの研究をする以上、現状を知るという意味で、プログラミング言語等についての知識は、あればそれに越したことはありません。しかし、高いプログラミングスキルや個々のプログラミング言語についての詳しい知識などは必須ではありません。むしろ、本研究室には、現状のプログラミング・プログラミング言語に疑問・不満のある人が向いています。現状のプログラミングに不満のない人、自由にプログラミングができている人はあまり向いていないかもしれません。
プログラミングスキルが身につきますか?
もちろん、本研究室での研究はあなたのプログラミングスキルを(何かしらの意味で)高めると思います。しかし、本研究室の目標はあなたのプログラミング技術を高めることではないことは意識しておいてください。むしろ、プログラミング技術が低くてもプログラムを作れるようになる・プログラミングのメリットを享受できるようになるような状況を目指しています。
ソフトウェア開発の研究もしていますか?
本研究室の中心的なテーマは「プログラミング」です。つまり、 (往々にして巨大な) ソフトウェアの開発というプロジェクト全体や、それに関する人間行動についての研究よりは、ソフトウェアを構成する (往々にしてそれほど大きくない) 各プログラム断片の、それ自体が(人間とは無関係に)もつ性質等をおもに探求しています。連携して研究を行っている中丸智貴先生の研究テーマも参考にしてください。
プログラミングのためのツール、たとえば統合開発環境などは研究していますか?
ターゲットには入りますが、以下の点には注意してください。本研究室の主な研究テーマはプログラミング (所望の機能を実現する計算構造を特定すること) です。しかし、多くの既存のツールはコーディング (プログラムを特定のプログラミング言語のテキストとして書き下すこと) の補助を行っています。ツールの研究をしたい場合は、「プログラミング」との関連をよく考えてください。
数学は使いますか?
プログラミングに関する技術をソリッドに組み立てるためには、最終的には数学が必要になります。どの程度の数学が必要かは研究テーマやアプローチによりますが、数学アレルギーの人にはあまりお勧めできません。逆に、数学は好きだが純粋数学よりも数学の応用を探求したい、という人は楽しめる可能性があります。
所属学生の研究成果
査読付き出版
国内学会発表
修士論文
卒業論文
研究テーマ例とそれに関連する文献
以下に研究テーマ例を挙げますが、これらに限らず、プログラミング・プログラミング言語にまつわる研究テーマであれば広く扱っています。
プログラムの自動並列化 p
アルゴリズム類型の自動導出 p
プログラムの自動合成・検証、およびプログラミング言語の設計 p
プログラム運算 p
研究室に参加したい方へ
<研究室に参加したい方へ (How to Join Our Laboratory)>
関連研究室・研究者

<back>
Akimasa Morihata, 2026

Valid XHTML 1.0! Valid CSS!