著者
逢坂 美冬 上野 雄大 大堀 淳
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.35, no.3, pp.3_79-3_95, 2018-07-25 (Released:2018-09-25)

一般にWebアプリケーションにおけるWebページの動的生成は,テンプレートエンジンを用い,事前に用意されたテンプレートに対して動的に値を埋め込むことで行う.テンプレートはテキストファイルとして用意され,実行時に読み込まれる.そのため,テンプレートに対する操作は一般に型無しの文字列操作となる.従って,たとえホスト言語が強い型付けを持つ関数型言語であったとしても,実際のテンプレート構造とプログラムの想定の間の不整合は静的に検出されない.本論文では,動的に読み込まれるテンプレートに対して,部分動的レコードに基づく動的型検査を行うことで,型付きのテンプレート操作を実現する言語機構を提案する.この機構は,テンプレートにホール名をラベルとするMLの部分動的レコード型を与え,テンプレートに値を埋め込む操作をレコードの更新演算と同様に型付けする.テンプレートに存在しないホールへの値の埋め込みは型エラーとなる.プログラムが想定するテンプレートの型と実際のテンプレートの構造の整合性は,テンプレートファイル読み込み時に動的に検査する.本論文ではさらに,この機構をML系関数型言語SML#のコンパイラを拡張することで実装し,実例を通じて実用性を検証するとともに,実用上の課題について議論する.

言及状況

外部データベース (DOI)

Twitter (2 users, 2 posts, 0 favorites)

部分動的レコードを活用した型付きテンプレートエンジンの実現 https://t.co/i2xIHcUGWB 積読消化。 SML♯ の部分動的レコードに基づくJSON操作機能を応用してテンプレート構造とプログラムの整合性を動的に型検査する話。 #smlsharp

収集済み URL リスト