可塑异常
Moldable Exceptions
AI总结:
本文提出“可塑异常”这一轻量级机制,利用异常携带的上下文信息动态适配调试器接口,以降低自定义调试器的实现门槛并增强实时编程环境的调试体验。
摘要:
调试是困难的。交互式调试器大多相同。它们向你展示一个调用栈、一种采样栈状态的方式,并且如果调试器是实时的,还提供一种逐步执行的方式。主流集成开发环境为通用编程语言提供的标准交互式调试器,大多以通用语言构造的形式提供底层接口,用于追踪和修复缺陷。而为特定应用领域开发的自定义调试器,则提供了更适合被调试程序具体执行上下文的替代接口。提供上下文相关调试视图和操作的自定义调试器能够极大提升我们对当前问题进行推理的能力。然而,实现此类自定义调试器并非易事,这构成了改善调试体验的障碍。在本文中,我们引入“可塑异常”(moldable exceptions),这是一种轻量级机制,可根据被抛出的异常所提供的上下文信息来适配调试器的接口。我们通过一系列示例展示了可塑异常如何增强实时编程环境。
英文摘要:
Debugging is hard. Interactive debuggers are mostly the same. They show you a stack, a way to sample the state of the stack, and, if the debugger is live, a way to step through execution. The standard interactive debugger for a general-purpose programming language provided by a mainstream IDE mostly offers a low-level interface in terms of generic language constructs to track down and fix bugs. A custom debugger, such as those developed for specific application domains, offers alternative interfaces more suitable to the specific execution context of the program being debugged. Custom debuggers offering contextual debugging views and actions can greatly improve our ability to reason about the current problem. Implementing such custom debuggers, however, is non-trivial, and poses a barrier to improving the debugging experience. In this paper we introduce "moldable exceptions", a lightweight mechanism to adapt a debugger's interface based on contextual information provided by a raised exception. We present, through a series of examples, how moldable exceptions can enhance a live programming environment.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。