Formal Aspects of Computing · 1989 · 54 citations · 21 references
ComputingComputer ScienceFormal MethodsProgramming LanguagesTheory Of ComputationData TypesProgramming Language DesignRecursion TheorySoftware ConstructionSoftware DesignType SystemsFormal ModelingInformation Loss AnalysisRecursive TypesStructural TypingType Theory
Abstract This paper provides a tutorial introduction to a constructive theory of types based on, but incorporating some extensions to, that originally developed by Per Martin-Löf. The emphasis is on the relevance of the theory to the construction of computer programs and, in particular, on the formal relationship between program and data structure. Topics discussed include the principle of propositions as types, free types, congruence types, types with information loss and mutually recursive types. Several examples of program development within the theory are also discussed in detail.
21
Fast Pattern Matching in Strings
Donald E. Knuth, James H. Morris, Vaughan Pratt · SIAM Journal on Computing · 1977 · 2.9K citations
A theory of type polymorphism in programming
Robin Milner · Journal of Computer and System Sciences · 1978 · 2.2K citations · Full text
Why Functional Programming Matters
John Hughes · The Computer Journal · 1989 · 739 citations · Full text
Investigations into Logical Deduction
Gerhard Gentzen · American Philosophical Quarterly · 1964 · 661 citations
Jayadev Misra, David Gries · Science of Computer Programming · 1982 · 524 citations