Conditional rewrite rules: Confluence and termination
Journal of Computer and System Sciences
4th Annual Symposium on Theoretical Aspects of Computer Sciences on STACS 87
Basic polymorphic typechecking
Science of Computer Programming
Algebraic specification
The syntax definition formalism SDF—reference manual—
ACM SIGPLAN Notices
The definition of Standard ML
Occurrences in debugger specifications
PLDI '91 Proceedings of the ACM SIGPLAN 1991 conference on Programming language design and implementation
The C++ programming language (2nd ed.)
The C++ programming language (2nd ed.)
Report on the programming language Haskell: a non-strict, purely functional language version 1.2
ACM SIGPLAN Notices - Haskell special issue
A meta-environment for generating programming environments
ACM Transactions on Software Engineering and Methodology (TOSEM)
Journal of Symbolic Computation - Special issue on automatic programming
Handbook of logic in computer science (vol. 2)
POPL '95 Proceedings of the 22nd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Science of Computer Programming
Catching bugs in the web of program invariants
PLDI '96 Proceedings of the ACM SIGPLAN 1996 conference on Programming language design and implementation
Within ARM's reach: compilation of left-linear rewrite systems via minimal rewrite systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
A simple applicative language: mini-ML
LFP '86 Proceedings of the 1986 ACM conference on LISP and functional programming
Finding the source of type errors
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
A maximum-flow approach to anomaly isolation in unification-based incremental type inference
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
The Java Language Specification
The Java Language Specification
Principal type-schemes for functional programs
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Complete Transformational Toolkit for Compilers
ESOP '96 Proceedings of the 6th European Symposium on Programming Languages and Systems
Type-Checking Revisited: Modular Error-Handling
Proceedings of the International Workshop on Semantics of Specification Languages (SoSL)
Minimal Term Rewriting Systems
Selected papers from the 11th Workshop on Specification of Abstract Data Types Joint with the 8th COMPASS Workshop on Recent Trends in Data Type Specification
Tracing the Origins of Verification Conditions
AMAST '96 Proceedings of the 5th International Conference on Algebraic Methodology and Software Technology
Dynamic Dependence in Term rewriting Systems and its Application to Program Slicing
PLILP '94 Proceedings of the 6th International Symposium on Programming Language Implementation and Logic Programming
EPIC: An Equational Language -Abstract Machine Supporting Tools-
RTA '96 Proceedings of the 7th International Conference on Rewriting Techniques and Applications
Cosy Compiler Phase Embedding with the CoSy Compiler Model
CC '94 Proceedings of the 5th International Conference on Compiler Construction
Compilation and Memory Management for ASF+SDF
CC '99 Proceedings of the 8th International Conference on Compiler Construction, Held as Part of the European Joint Conferences on the Theory and Practice of Software, ETAPS'99
Origin Functions in Lambda-Calculus and Term Rewriting Systems
CAAP '92 Proceedings of the 17th Colloquium on Trees in Algebra and Programming
Generic Techniques for Source-Level Debugging and Dynamic Program Slicing
TAPSOFT '95 Proceedings of the 6th International Joint Conference CAAP/FASE on Theory and Practice of Software Development
Origin Tracking in Primitive Recursive Schemes.
Origin Tracking in Primitive Recursive Schemes.
Animators and error reporters for generated programming environments
Animators and error reporters for generated programming environments
Program slices: formal, psychological, and practical investigations of an automatic program abstraction method
A case study of a slicing-based approach for locating type errors
Algebraic'97 Proceedings of the 2nd international conference on Theory and Practice of Algebraic Specifications
Compiling language definitions: the ASF+SDF compiler
ACM Transactions on Programming Languages and Systems (TOPLAS)
Improving program slicing with dynamic points-to data
Proceedings of the 10th ACM SIGSOFT symposium on Foundations of software engineering
From symptom to cause: localizing errors in counterexample traces
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Improving program slicing with dynamic points-to data
ACM SIGSOFT Software Engineering Notes
Term rewriting with traversal functions
ACM Transactions on Software Engineering and Methodology (TOSEM)
Program Slicing with Dynamic Points-To Sets
IEEE Transactions on Software Engineering
Seminal: searching for ML type-error messages
Proceedings of the 2006 workshop on ML
Proceedings of the 5th international conference on Generative programming and component engineering
Searching for type-error messages
Proceedings of the 2007 ACM SIGPLAN conference on Programming language design and implementation
A type system equivalent to a model checker
ACM Transactions on Programming Languages and Systems (TOPLAS)
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
On the complexity of error explanation
VMCAI'05 Proceedings of the 6th international conference on Verification, Model Checking, and Abstract Interpretation
A type system equivalent to a model checker
ESOP'05 Proceedings of the 14th European conference on Programming Languages and Systems
Interprocedural analysis for privileged code placement and tainted variable detection
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Explaining ML type errors by data flows
IFL'04 Proceedings of the 16th international conference on Implementation and Application of Functional Languages
Automating security mediation placement
ESOP'10 Proceedings of the 19th European conference on Programming Languages and Systems
Precise explanation of success typing errors
PEPM '13 Proceedings of the ACM SIGPLAN 2013 workshop on Partial evaluation and program manipulation
Counter-factual typing for debugging type errors
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Toward general diagnosis of static errors
Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages
Hi-index | 0.00 |
The effectiveness of a type-checking tool strongly depends on the accuracy of the positional information that is associated with type errors. We present an approach where the location associated with an error message e is defined as a slice Pe of the program P being type-checked. We show that this approach yields highly accurate positional information: Pe is a program that contains precisely those program constructs in P that caused error e. Semantically, we have the interesting property that type-checking Pe is guaranteed to produce the same error e. Our approach is completely language-independent and has been implemented for a significant subset of Pascal. We also report on experiments with object-oriented type systems, and with a subset of ML.