Title :
A typed pattern calculus
Author :
Tannen, Val Bream- ; Kesner, Delia ; Puel, Laurence
Author_Institution :
Dept. of Comput. & Inf. Sci., Pennsylvania Univ., Philadelphia, PA, USA
Abstract :
The theory of programming with pattern-matching function definitions has been studied mainly in the framework of first-order rewrite systems. The authors present a typed functional calculus that emphasizes the strong connection between the structure of whole pattern definitions and their types. In this calculus, type-checking guarantees the absence of runtime errors caused by nonexhaustive pattern-matching definitions. Its operational semantics is deterministic in a natural way, without the imposition of ad hoc solutions such as clause order or best fit. The calculus is designed as a computational interpretation of the Gentzen sequent proofs for the intuitionistic propositional logic. The basic properties connecting typing and evaluation, subject reduction, and strong normalization are proved. The authors believe that this calculus offers a rational reconstruction of the pattern-matching features found in successful functional languages
Keywords :
calculus; formal logic; functional programming; rewriting systems; type theory; Gentzen sequent proofs; first-order rewrite systems; functional languages; intuitionistic propositional logic; nonexhaustive pattern-matching definitions; operational semantics; pattern-matching function definitions; rational reconstruction; runtime errors; strong normalization; subject reduction; typed functional calculus; typed pattern calculus; Calculus; Functional programming; Information science; Joining processes; Logic design; Pattern matching; Redundancy; Runtime;
Conference_Titel :
Logic in Computer Science, 1993. LICS '93., Proceedings of Eighth Annual IEEE Symposium on
Conference_Location :
Montreal, Que.
Print_ISBN :
0-8186-3140-6
DOI :
10.1109/LICS.1993.287581