当前位置: X-MOL 学术arXiv.cs.PL › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Retrofitting Symbolic Holes to LLVM IR
arXiv - CS - Programming Languages Pub Date : 2020-06-10 , DOI: arxiv-2006.05875
Bruce Collie, Michael O'Boyle

Symbolic holes are one of the fundamental building blocks of solver-aided and interactive programming. Unknown values can be soundly integrated into programs, and automated tools such as SAT solvers can be used to prove properties of programs containing them. However, supporting symbolic holes in a programming language is challenging; specifying interactions of holes with the type system and execution semantics requires careful design. This paper motivates and introduces the implementation of symbolic holes with unknown type to LLVM IR, a strongly-typed compiler intermediate language. We describe how such holes can be implemented safely by abstracting unsound and type-unsafe details behind a new primitive IR manipulation. Our implementation co-operates well with existing features such as type and dependency checking. Finally, we highlight potentially fruitful areas for investigation using our implementation.

中文翻译:

将符号孔改造为 LLVM IR

符号洞是求解器辅助和交互式编程的基本构建块之一。未知值可以很好地集成到程序中,并且可以使用诸如 SAT 求解器之类的自动化工具来证明包含它们的程序的属性。然而,在编程语言中支持符号漏洞是具有挑战性的。指定漏洞与类型系统和执行语义的交互需要仔细设计。本文激发并介绍了未知类型符号漏洞的实现,这是一种强类型编译器中间语言 LLVM IR。我们描述了如何通过在新的原始 IR 操作背后抽象不健全和类型不安全的细节来安全地实现此类漏洞。我们的实现与现有功能(例如类型和依赖项检查)很好地协作。最后,
更新日期:2020-06-11
down
wechat
bug