2016 Fiscal Year Annual Research Report
ML系多相型言語SML#の実用化技術に関する基礎研究
Project/Area Number |
25280019
|
Research Institution | Tohoku University |
Principal Investigator |
大堀 淳 東北大学, 電気通信研究所, 教授 (60252532)
|
Co-Investigator(Kenkyū-buntansha) |
上野 雄大 東北大学, 電気通信研究所, 准教授 (60551554)
|
Project Period (FY) |
2013-04-01 – 2018-03-31
|
Keywords | SML# / コンパイラ / 実装方式 / 最適化 / コード分析 |
Outline of Annual Research Achievements |
本研究の目的を達成する上での具体的な目標は以下の通りである.(1) 効率よいコード生成システム.効率良いコードを生成可能にする方式の開発および汎用のコード生成システムであるLLVMバックエンドの開発する. (2)コンパイラの高速化技術.関数型言語で書かれたコンパイラの特性の分析を通じて,コンパイル時間の大幅な短縮を実現する技術を開発する. (3)実行時コード分析.コンパイラが行う各中間言語の変換過程を,意味と型ばかりでなく,位置情報をも保存する変換として洗練することによって,実行コード分析の枠組みを構築する. (4) ソースコード分析と可視化.ソースコード間の依存関係を表現する方式を構築し,大規模システムのソースコード分析の枠組みを構築する.(5) 高信頼WEBフレームワーク.ML系高信頼言語でWEBアプリケーションを効率よく開発するためのフレームワークの型理論と実装技術を構築する.この最後の項目は,成果の社会展開を意図し,H26年度からあらたに追加したものである. 平成28年度の主な成果は以下の通りである.(1)に関しては,並行ゴミ集め(GC)の理論アルゴリズムを改良し研究を完成させそれら結果を関数型言語に関するトップコンファレンスICFPにて発表した.また,(2),(3),(4)に関しては,昨年に引き続き,外部関数の並列実行に関する性能評価,コード可視化ツールの実用化に向けての研究を行った.さらに,(5)に関しては,WEBアプリケーションにとって必須の機能である外部とのデータ交換に関して,JSONデータを型安全かつ高水準に扱うための型理論とコンパイル方式を完成させ,オブジェクト指向プログラミング分野のトップコンファレンスECOOPにて発表した.さらに,WEBフレームワーク実現の基礎として,自然結合を言語で直接実現するための理論と実装技術の構築に成功した.
|
Current Status of Research Progress |
Current Status of Research Progress
1: Research has progressed more than it was originally planned.
Reason
上項目に記載のとおり,並行GCの研究を完成させ関数型言語のトップコンファレンスICFPでの発表を実現できた.このML系高信頼言語における本格的な並行GCの実現は,世界的にも新規性の高い機能である.また,27年度から新たに開始したWEBアプリケーションフレームワークの研究開発においても,世界的にも新規性あるJSONデータの型安全な処理方式の研究を完成し,オブジェクト指向プログラミングのトップコンファレンスECOOP2016にての発表が実現できた.これらは当初期待した以上の成果であり全体として,想定以上の進捗を達成していると言える.
|
Strategy for Future Research Activity |
今後,これらの研究を引き続き推進する.平成29年度の具体的な計画は以下の通りである. (1) 平成28年度の完成させた並行GCを基礎とし,軽量な超並列スレッド機能を実現する実行時システムおよび超並列プログラミングのための言語機能の構築を行う. (2),(3),(4) 前年度に引き続き,外部関数呼び出しの最適化に関する研究開発,ネイティブマルチスレッド機能をも含むプログラムに関するプロファイルおよび可視化に関する研究を行う. (5) WEBアプリケーションフレームワークに関しては,昨年度に構築した自然結合の型システムを基礎に,自然結合を言語レベルでサポートするための操作的意味論とそのコンパイル方式を構築し,自然結合機能をSML#コンパイラに取り入れリリースを目指す.さらに,これら機能を基礎に,より堅牢なWEBアプリケーション構築に資する理論と方式の研究開発を推進する.
|
Causes of Carryover |
年度当初の予定では,コンパイラの拡張の実現に関わるソフトウェア開発費等のための人件費等を支出する予定であったが,本年度はそれら開発の基盤となるコンパイル方式や実装技術の開発に注力しそれら開発に関する支出を見送ったため.
|
Expenditure Plan for Carryover Budget |
次年度以降,コンパイラの拡張を実現するためのソフトウェア開発費用や人件費等の目的で有効に使用する予定である.
|
-
-
[Presentation] SML# with Natural Join2016
Author(s)
Tomohiro Sasaki, Katsuhiro Ueno, Atsushi Ohori
Organizer
ACM SIGPLAN Workshop on ML
Place of Presentation
Nara, Japan
Year and Date
2016-09-22 – 2016-09-22
Int'l Joint Research
-
-
-
-
-
-
-
-