2003
DOI: 10.1007/3-540-45013-0_1
|View full text |Cite
|
Sign up to set email alerts
|

Abstract Diagnosis of Functional Programs

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
30
0

Year Published

2008
2008
2018
2018

Publication Types

Select...
5
1
1

Relationship

0
7

Authors

Journals

citations
Cited by 20 publications
(30 citation statements)
references
References 19 publications
0
30
0
Order By: Relevance
“…To obtain a manageable analysis, we consider only top-level constructors in the analysis so that a value is some constructor-rooted expression. In principle, this could be extended to any depth bound k (as used in the abstract diagnosis of functional programs [2] or in the abstraction of term rewriting systems [8,9]), but in practice only a depth k = 1 (i.e., top-level constructors) is useful due to the quickly growing size of the abstract domain for k > 1. For instance, for lists we distinguish the values [] (empty list) and ":" (non-empty lists) and for Booleans we distinguish the values True and False.…”
Section: Analysis Of Required Valuesmentioning
confidence: 99%
“…To obtain a manageable analysis, we consider only top-level constructors in the analysis so that a value is some constructor-rooted expression. In principle, this could be extended to any depth bound k (as used in the abstract diagnosis of functional programs [2] or in the abstraction of term rewriting systems [8,9]), but in practice only a depth k = 1 (i.e., top-level constructors) is useful due to the quickly growing size of the abstract domain for k > 1. For instance, for lists we distinguish the values [] (empty list) and ":" (non-empty lists) and for Booleans we distinguish the values True and False.…”
Section: Analysis Of Required Valuesmentioning
confidence: 99%
“…A debugging technique that is very related to algorithmic debugging is abstract diagnosis [9,10,11]. This technique relies on the same idea as algorithmic debugging but there are two important differences: (1) Abstract diagnosis assumes the existence of a (correct) specification of the program that is being debugged.…”
Section: Algorithmic Debuggingmentioning
confidence: 99%
“…Consequently, new debugging approaches based on the language's semantics have been introduced in the field of declarative languages, such as abstract diagnosis, which formulates a debugging methodology based on abstract interpretation [9,1], or declarative debugging, also known as algorithmic debugging, which was first introduced by E. Y. Shapiro [19] and that constitutes the framework of this work. Declarative debugging has been widely employed in the logic [10,14,22], functional [21,17,16,18], and multiparadigm [5,3,11] programming languages.…”
Section: Introductionmentioning
confidence: 99%