An Embedded Type Debugger

An Embedded Type Debugger
复制标题

嵌入式调试器

DOI:
10.1007/978-3-642-41582-1_12
复制
发表时间:
2013
期刊:
Implementation and Application of Functional Languages
影响因子:
--
通讯作者:
Kenichi Asai
Kenichi Asai
中科院分区:
--
文献类型:
--
作者:
Kanae Tsushima;Kenichi Asai

文献摘要

参考文献

被引文献

相似文献

本文介绍了如何构建一个类型调试器,而无需实现任何专用的类型推理器。以前的类型调试器除了编译器的类型推断器之外还需要自己的类型推断器。我们的方法有三方面的优势。首先,通过不实现类型推断器,可以保证调试器的类型推断永远不会与编译器的类型推断不一致。第二,我们可以避免无意义地复制一个类型推断器,它应该精确地作为编译器的类型推断器工作。第三,我们的方法对底层语言的更新是鲁棒的。我们的方法的关键观察是,交互式类型调试,提出了Chitil,不需要一个类型推理树,但只有一个树具有一定的简单属性。我们确定的属性,并提出如何构造一个树,满足此属性使用编译器的类型推断。属性指导我们如何为各种语言构造构建类型调试器。在本文中,我们描述了我们的想法,并首先将其应用到简单类型的lambda演算。之后,我们用let多态和对象扩展它,看看我们的技术如何扩展。
This paper presents how to build a type debuggerwithoutimplementing any dedicated type inferencer. Previous type debuggers required their own type inferencers apart from the compiler’s type inferencer. The advantage of our approach is threefold. First, bynotimplementing a type inferencer, it is guaranteed that the debugger’s type inference never disagrees with the compiler’s type inference. Secondly, we can avoid the pointless reproduction of a type inferencer that should work precisely as the compiler’s type inferencer. Thirdly, our approach is robust to updates of the underlying language. The key observation of our approach is that the interactive type debugging, as proposed by Chitil, does not require a type inference tree but only a tree with a certain simple property. We identify the property and present how to construct a tree that satisfies this property using the compiler’s type inferencer. The property guides us how to build a type debugger for various language constructs. In this paper, we describe our idea and first apply it to the simply-typed lambda calculus. After that, we extend it with let-polymorphism and objects to see how our technique scales.
无约束类型错误切片
DOI: --
发表时间: 2011
期刊: Symposium on Trends in Functional Programming
影响因子: --
作者:
Thomas Schilling
通讯作者: Thomas Schilling
DOI: --
发表时间: 2004
期刊: International Symposium on Functional and Logic Programming (FLOPS) Springer LNCS 2998
影响因子: --
作者:
Jacques Garrigue;Keiko Nakata;Akira Ito;Jacques GARRIGUE
通讯作者: Jacques GARRIGUE
Typeview:理解类型错误的工具
DOI: --
发表时间: 2000
期刊: --
影响因子: --
作者:
A. Simon;O. Chitil;F. Huch
通讯作者: F. Huch
Helium 的参数类型推断
DOI: --
发表时间: 2002
期刊: --
影响因子: --
作者:
B. Heeren;Jurriaan Hage
通讯作者: Jurriaan Hage
查找类型错误的根源
DOI: 10.1145/512644.512648
发表时间: 1986
期刊: ACM Computing Surveys (CSUR)
影响因子: --
作者:
M. Wand
通讯作者: M. Wand