The system F of variable types, fifteen years later
Theoretical Computer Science
Conditional rewriting logic as a unified model of concurrency
Selected papers of the Second Workshop on Concurrency and compositionality
Handbook of logic in computer science (vol. 2)
Type inference: some results, some problems
Fundamenta Informaticae - Special issue: lambda calculus and type theory
The Definition of Standard ML
POPL '83 Proceedings of the 10th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Principal type-schemes for functional programs
POPL '82 Proceedings of the 9th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '03 Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Rewriting logic: roadmap and bibliography
Theoretical Computer Science - Rewriting logic and its applications
Reflection in conditional rewriting logic
Theoretical Computer Science - Rewriting logic and its applications
Inductive definition in type theory
Inductive definition in type theory
The Implementation of Functional Programming Languages (Prentice-Hall International Series in Computer Science)
Hi-index | 0.00 |
The Rewriting-calculus (Rho-calculus), is a minimal framework embedding Lambda-calculus and Term Rewriting Systems, by allowing abstraction on variables and patterns. The Rho-calculus fea- tures higher-order functions (from Lambda-calculus) and pattern-matching (from Term Rewriting Systems). In this paper, we study extensively a second-order Rho-calculus a la Church (RhoF) that enjoys subject reduction, type uniqueness, and decidability of typing. Then we apply a classical type-erasing function to RhoF, to obtain an untyped Rho-calculus a la Curry (uRhoF). The related type inference system is isomorphic to RhoF and enjoys subject reduction. Both RhoF and uRhoF systems can be considered as minimal calculi for polymorphic rewriting-based program- ming languages. We discuss the possibility of a logic existing underneath the type systems via a Curry-Howard Isomorphism.