首页> 外文会议>International symposium on functional and logic programming >The Design and Implementation of BER MetaOCaml System Description
【24h】

The Design and Implementation of BER MetaOCaml System Description

机译:BER MetaOCaml系统描述的设计与实现

获取原文

摘要

MetaOCaml is a superset of OCaml extending it with the data type for program code and operations for constructing and executing such typed code values. It has been used for compiling domain-specific languages and automating tedious and error-prone specializations of high-performance computational kernels. By statically ensuring that the generated code compiles and letting us quickly run it, MetaOCaml makes writing generators less daunting and more productive. The current BER MetaOCaml is a complete re-implementation of the original MetaOCaml by Taha, Calcagno and collaborators. Besides the new organization, new algorithms, new code, BER MetaOCaml adds a scope extrusion check superseding environment classifiers. Attempting to build code values with unbound or mistakenly bound variables (liable to occur due to mutation or other effects) is now caught early, raising an exception with good diagnostics. The guarantee that the generated code always compiles becomes unconditional, no matter what effects were used in generating the code. We describe BER MetaOCaml stressing the design decisions that made the new code modular and maintainable. We explain the implementation of the scope extrusion check.
机译:MetaOCaml是OCaml的超集,将其扩展为程序代码的数据类型以及用于构造和执行这种类型化代码值的操作。它已被用于编译特定领域的语言,并自动执行高性能计算内核的繁琐且容易出错的专业化设计。通过静态地确保生成的代码可以编译并让我们快速运行它,MetaOCaml使得编写生成器的过程不再那么艰巨,而且效率更高。当前的BER MetaOCaml是Taha,Calcagno和合作者对原始MetaOCaml的完全重新实现。除了新的组织,新的算法,新的代码之外,BER MetaOCaml还添加了范围挤压检查取代环境分类器。现在尝试尽早构建具有未绑定或错误绑定的变量(易于由于突变或其他影响而发生)的代码值,从而引发具有良好诊断能力的异常。无论生成代码时使用了什么效果,保证生成的代码始终可以编译的保证变得无条件。我们描述BER MetaOCaml强调使新代码模块化和可维护的设计决策。我们解释了范围挤压检查的实现。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号