...
首页> 外文期刊>Science of Computer Programming >Efficient counter-factual type error debugging
【24h】

Efficient counter-factual type error debugging

机译:高效的反事实型错误调试

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

摘要

Providing effective error messages in response to type errors continues to be a challenge in functional programming. Type error messages often point to bogus error locations or lack sufficient information for removing the type error,making error debugging ineffective. Counter-factual typing (CFT) addressed this problem by generating comprehensive error messages with each message includes a rich set of information. However,this comes with a cost of huge computations,making it too slow for interactive use. In particular,our recent study shows that programmers usually have to go through multiple iterations of updating and recompiling programs to remove a type error. Interestingly,our study also finds that program updates are minor in each iteration during type error debugging. We exploit this fact and develop eCFT,an efficient version of CFT,which doesn't recompute all error fixes from scratch for each updated program but only recomputes error fixes that are changed in response to the update. Our key observation is that minor program changes lead to minor error suggestion changes. eCFT is based on principal typing,a typing scheme more amenable to reuse previous typing results. We have evaluated our approach and found it is about 12.4x faster than CFT in updating error fixes.
机译:提供有效的错误消息以响应类型错误在功能规划中仍然是一个挑战。类型错误消息通常指向虚假错误位置或缺少删除类型错误的足够信息,使错误调试无效。逆实例键入(CFT)通过生成与每条消息的全面错误消息产生综合错误,包括丰富的信息。然而,这具有巨大计算成本,使其无法互动使用。特别是,我们最近的一项研究表明,程序员通常必须经过多次迭代更新和重新编译程序以删除类型错误。有趣的是,我们的研究还发现,在类型错误调试期间,每个迭代都有次要程序更新。我们利用此事实并开发ECFT,一个有效的CFT版本,这不会重新计算每个更新程序的划痕,但仅重新计算响应更新的错误修复程序。我们的重点观察是,小程序变化导致次要错误建议发生变化。 ECFT基于主键入,一个键入方案更容易重用以前的键入结果。我们已经评估了我们的方法,发现它比更新错误修复时比CFT快12.4倍。

著录项

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号