HAL 程序的检查模式
编程语言
2010-09-03 v1
摘要
最近的约束逻辑编程(CLP)语言,如 HAL 和 Mercury,需要为谓词声明类型、模式和确定性。这种信息允许生成高效的目标代码并在编译时检测许多错误。不幸的是,CLP 语言中的模式检查困难。其中一个主要原因是,对每个谓词模式声明,编译器需要重新排序谓词定义中文字面量。任务进一步复杂化,因为需要处理复杂的实例(这些实例与类型声明和高阶谓词相互作用)以及对求解器变量的自动初始化。本文定义了需要重新排序子句体文字的强类型 CLP 语言的模式检查。此外,我们展示了如何通过使用对应的多态类型来处理多态模式的简单情况。
引用
@article{arxiv.cs/0409038,
title = {Checking modes of HAL programs},
author = {Maria Garcia de la Banda and Warwick Harvey and Kim Marriott and Peter J. Stuckey and Bart Demoen},
journal= {arXiv preprint arXiv:cs/0409038},
year = {2010}
}
备注
46 pages, 3 figures To appear in Theory and Practice of Logic Programming