高效准确的图案匹配和静态类型下的笔刷计算
摘要:Stencil计算是科学计算、游戏和图像处理中常见的编程模式,涉及对数组元素进行操作。作为一种编程模式,Stencil计算具有高度规律性,便于优化和并行化。然而,通用编程语言使编译器甚至程序员无法理解这种规律模式,从而无法进行优化,并可能导致不正确的结果。本文深入研究了嵌入在Haskell中的Stencil计算的Ypnos领域特定语言。Ypnos允许声明性、抽象的规范Stencil计算,通过专门的语法将问题的结构暴露给编译器和程序员。在本文中,我们展示了经过可判定的安全性保证,良好形式、良好类型的Ypnos程序不会超出数组边界进行索引。因此,在Ypnos中进行索引是安全的,可以消除运行时的边界检查。程序信息被编码为类型,使用Glasgow Haskell Compiler高级类型系统的功能,在编译时通过类型检查强制执行安全索引不变量。
作者:Dominic Orchard (Computer Laboratory, University of Cambridge), Alan Mycroft (Computer Laboratory, University of Cambridge)
论文ID:1109.0777
分类:Programming Languages
分类简称:cs.PL
提交时间:2011-09-06