...
【24h】

Checking modes of HAL programs

机译:HAL程序的检查模式

获取原文
获取原文并翻译 | 示例
           

摘要

Recent constraint logic programming (CLP) languages, such as HAL and Mercury, require type, mode and determinism declarations for predicates. This information allows the generation of efficient target code and the detection of many errors at compile-time. Unfortunately, mode checking in such languages is difficult. One of the main reasons is that, for each predicate mode declaration, the compiler is required to appropriately re-order literals in the predicate's definition. The task is further complicated by the need to handle complex instantiations (which interact with type declarations and higher-order predicates) and automatic initialization of solver variables. Here we define mode checking for strongly typed CLP languages which require reordering of clause body literals. In addition, we show how to handle a simple case of polymorphic modes by using the corresponding polymorphic types.
机译:最近的约束逻辑编程(CLP)语言(例如HAL和Mercury)要求谓词的类型,模式和确定性声明。该信息允许在编译时生成有效的目标代码并检测许多错误。不幸的是,用这种语言进行模式检查很困难。主要原因之一是,对于每个谓词模式声明,要求编译器在谓词的定义中适当地对文字进行重新排序。由于需要处理复杂的实例化(与类型声明和高阶谓词进行交互)和求解器变量的自动初始化,因此任务变得更加复杂。在这里,我们为强类型CLP语言定义了模式检查,这些类型需要对子句主体文字进行重新排序。另外,我们展示了如何通过使用相应的多态类型来处理多态模式的简单情况。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号