3.2 SML#の歴史
SML#の起源は,大堀等によるデータベースコミュニティへの Machiavelli言語の提案[11]に遡ることができます. この論文では,レコード多相を含むMLはSQLを包摂できることが示され, その有用性がプロトタイプの実装によってしめされています.
その後,1993年,沖電気工業(株)関西総合研究所にて,大堀により, Standard ML of New Jerseyコンパイラに多相型レコード演算を加え拡張したプ ロトタイプSML# of Kansaiが開発されました. その時のSML#のtypesメーリングリストへのアナウンスは,今で もインターネット上に記録されています ( http://www.funet.fi/pub/languages/ml/sml%23/description ).
SML# of Kansaiの名前は,このコンパイラにて初めて多相型が与えら れたレコード演算子”#”を象徴するものです. このコンパイラは,1996年ACM TOPLASに出版されたコード多相性に関する論文 [9]で,SML#の名前で紹介されています.
その後,より完全なSML#コンパイラの開発の努力が継続されま した.
2003年に,北陸先端科学技術大学院大学にて,文部科学省リーディング プロジェクトe-Society基盤ソフトウェアの総合開発「高い生産性をもつ高信頼 ソフトウエア作成技術の開発」 (領域代表者:片山卓也) の一つの課題 「プログラムの自動解析に基づく高信頼ソフトウェアシステム構築技術」(2003年―2008年,究代表者:大堀 淳) ( http://www.tkl.iis.u-tokyo.ac.jp/e-society/index.html ) として, 次世代ML系関数型言語SML#をスクラッチから開発するプロジェクトを開始しました.
2006年4月,プロジェクトは,大堀とともに東北大学電気通信研究所に移り開発 を継続しています.
2008年のe-Societyプロジェクト終了後も,東北大学電気通信研究所大堀・上野研究室 にて,SML#の研究開発を続けています.