卒業論文中関発表

11月14日に卒業論文の中間発表がありました。僕の所属している研究室では後
期のゼミはM1の発表(論文紹介とか,いろいろ),M2の修論中間発表、B4の卒論
中間発表と続きます。間に先生や博士の方のの発表も入ります。


さて、僕は夏休みの後は新処理系の実装をしており,それが終わった後はプロ
グラミングコンテストをしていて研究をする暇がなく、結局中間発表に付いて
考え始めたのが一週間前ということになってしまいました。いつもながら計画
性がなくぎりぎりです。いや、今回はぎりぎりを越して手遅れだった気もしま
す。

発表テーマとして考えたのはは以前に先生から提案された"あれ"の使用メモリの

見積の続きで、"あれ"の実行時に有界メモリ空間で安全に実行可能なことを型
システムで保証するという話です。"あれ"がresource consciousな言語である
ことには以前から注目していたし,最近はメモリが制限された環境が広く使わ
れる様になってきているのでいいテーマだと思った。


まずは、関連研究の調査から始めた。関連研究を調べてみると関数型言語に対
してlinear typeを使った型システムを構築してヒープ領域を有界にしている研究http://citeseer.ist.psu.edu/hofmann00type.htmlだ。
ただし、スタック領域は制限されていない。関数型言語
bounded-spaceにする場合はfirst-orderに言語を制限しないとダメなようだ。
linear typeを使用する以外にも、region inferenceを使うものもあった。
あとは、研究室の先輩の論文を読んだ。


で、ここまでで発表美まで残りはあと二日。ここからスライドを作り始めるわ
けだけど、いままでは調べ物をしただけで自分で考えたことはあまりない状態
だ(まあ、少しは以前から考えていたんだけど)。基本的は考え方はルールの
実行の前と後で何かの不変条件が満たされていると考えて、今回はそれが使用
する領域が増えないという条件を考えた。


まずは、"あれ"にメモリ空間が有界であるという制限を加えるには型システム
と実行戦略の両方を考えなければならないことに気がつく。今までの処理系の
やりかただとダメだ。"あれ"は並行性を持つ言語なので実行が進むたびにプロ
セスをどんどん作っていく。関数型言語では関数をどんどん深く呼ぶところで
も、プロセスをどんどん作る。で、まあ他にもいくつか課題があって,あとはひ
たすらその課題に関して悩んでいた。


二日前の夜は友達の上に泊まらせてもらって、前日は研究室に泊まってスライ
ドを完成させた。前日の夜に一度できたのだけど,朝にもっと自分の立ち位置
をはっきりしようと思い至って変えた。結局texは出来なかった(適当に書い
ただけ)。


発表はあまり練習が出来なくてスムーズにはいかなかったけれど、まあ博士や
先生からいい意見をもらえたので良かったと思う。発表の流れのスライドが非
表示設定になっていたのは焦ったけど。あ、スライドのデザインせっかく作っ
てもらったのに使わなくてごめんなさい。後回しにしていたら時間がなくなり
ました。


今回の中間発表では、問題を考えてどうしたらその問題を解決したことになる
のかを考え,研究の背景や関連研究の調査という研究の流れを始めてやって大変だった。
悩みに悩んだおかげで少しは成長できた気がする。


しかし、卒論まで後わずかなのに間に合う気がしない。。とりあえず、線型論
理と型理論の勉強は必須だぁ。