当前位置: X-MOL 学术 › Fundam. Inform. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Dynamic Slicing for Concurrent Constraint Languages
Fundamenta Informaticae ( IF 1.166 ) Pub Date : 2020-12-10 , DOI: 10.3233/fi-2020-1992
Moreno Falaschi 1 , Maurizio Gabbrielli 2 , Carlos Olarte 3 , Catuscia Palamidessi 4
Affiliation  

Concurrent Constraint Programming (CCP) is a declarative model for concurrency where agents interact by telling and asking constraints (pieces of information) in a shared store. Some previous works have developed (approximated) declarative debuggers for CCP languages. However, the task of debugging concurrent programs remains difficult. In this paper we define a dynamic slicer for CCP (and other language variants) and we show it to be a useful companion tool for the existing debugging techniques. We start with a partial computation (a trace) that shows the presence of bugs. Often, the quantity of information in such a trace is overwhelming, and the user gets easily lost, since she cannot focus on the sources of the bugs. Our slicer allows for marking part of the state of the computation and assists the user to eliminate most of the redundant information in order to highlight the errors. We show that this technique can be tailored to several variants of CCP, such as the timed language ntcc, linear CCP (an extension of CCP-based on linear logic where constraints can be consumed) and some extensions of CCP dealing with epistemic and spatial information. We also develop a prototypical implementation freely available for making experiments.

中文翻译:

并发约束语言的动态切片

并发约束编程 (CCP) 是一种声明式并发模型,其中代理通过告知和询问共享存储中的约束(信息片段)进行交互。之前的一些工作已经为 CCP 语言开发了(近似的)声明式调试器。然而,调试并发程序的任务仍然很困难。在本文中,我们为 CCP(和其他语言变体)定义了一个动态切片器,并展示了它是现有调试技术的有用配套工具。我们从显示错误存在的部分计算(跟踪)开始。通常,此类跟踪中的信息量是巨大的,用户很容易迷失方向,因为她无法专注于错误的来源。我们的切片器允许标记部分计算状态并帮助用户消除大部分冗余信息以突出错误。我们表明该技术可以适用于 CCP 的几种变体,例如定时语言 ntcc、线性 CCP(基于线性逻辑的 CCP 的扩展,其中可以使用约束)以及处理认知和空间信息的 CCP 的一些扩展. 我们还开发了一个可免费用于进行实验的原型实现。
更新日期:2020-12-10
down
wechat
bug