2011年7月8日金曜日

【まとめ】埋め込みDSL関係の論文(1)


埋め込みDSL(Domain Specific Language)関係の論文をまとめたので書いておく。

Plugging Haskell in (2004) - Andre Pang, Don Stewart, Sean Seefried, and Manuel M. T. Chakravarty
→Haskellをプラグインとして使う方法を紹介している。紹介されているプラグインは、HaskellでもHaskell FFIがサポートしている他の言語でも使用できる。GHCで提供されている仕組みを使って、プラグイン、実行時コンパイル、動的リンクを実現する方法を示している。また、サンプルも紹介されている。

Standard ML as a Meta-Programming Language (1996) - Samuel Kamin
→Standard MLをメタプログラミング言語として使うことを提案し、4つの実例を示している。Standard MLのコードからCのコードを生成。

Building program generators the easy way - Samuel Kamin
→関数型プログラミング言語で簡単にプログラムジェネレータを作ることができることを紹介している。この方法によって、ソフトウェア開発に関数型プログラム言語を便利に応用できる可能性を示している。

Effecient Image Manipulation via Run-time Compilation (1999) - Oege de Moor, Conal Elliott, and Sigbjorn Finne
→DSLとして定義したイメージ操作システムを、実行時に最適化・コンパイルすることで、その効率化する方法を紹介している。

Optimizing Embedded DSLs using Template Haskell (2004) - Sean Seefried, Manuel Chakravarty, and Gabriele Keller
→コンパイル時メタプログラミングによってEDSLの実行効率を改善する方法を示している。EDSLとしてのシンプルさを保ったまま実行効率を改善する。

GPU Kernels as Data-Parallel Array Computation in Haskell (2009) - Sean Lee, Manuel M. T. Chakravarty, and Vinod Grover
→HaskellにGPUカーネルを埋め込んでデータ並列の配列計算を行う方法を示している。

Accelerating Haskell Array Codes with Multicore GPUs (2011) - Manuel M. T. Chakravarty, Gabriele Keller, Sean Lee, Trevor L. McDonell, and Vinod Grover
→GPUコーンピューティングの抽象度を上げるために、配列計算の高レベルDSLを提案する。HaskellにこのDSLを埋め込み、NVIDIAのCUDAのためのコードを実行時に生成する。


■関連エントリ

【まとめ】埋め込みDSL関係の論文(2)

--

0 件のコメント: