Back to Search
Start Over
In Praise of Impredicativity: A Contribution to the Formalization of Meta-Programming
- Source :
- Theory and Practice of Logic Programming. 20:99-146
- Publication Year :
- 2019
- Publisher :
- Cambridge University Press (CUP), 2019.
-
Abstract
- Processing programs as data is one of the successes of functional and logic programming. Higher-order functions, as program-processing programs are called in functional programming, and meta-programs, as they are called in logic programming, are widespread declarative programming techniques. In logic programming, there is a gap between the meta-programming practice and its theory: The formalisations of meta-programming do not explicitly address its impredicativity and are not fully adequate. This article aims at overcoming this unsatisfactory situation by discussing the relevance of impredicativity to meta-programming, by revisiting former formalisations of meta-programming and by defining Reflective Predicate Logic, a conservative extension of first-order logic, which provides a simple formalisation of meta-programming.<br />Comment: Under consideration for publication in Theory and Practice of Logic Programming
- Subjects :
- FOS: Computer and information sciences
Computer Science - Logic in Computer Science
Computer science
0102 computer and information sciences
computer.software_genre
01 natural sciences
Theoretical Computer Science
Artificial Intelligence
0101 mathematics
Logic programming
Declarative programming
Predicate logic
Functional programming
I.2.4
D.1.6
Programming language
010102 general mathematics
Metaprogramming
Logic in Computer Science (cs.LO)
TheoryofComputation_MATHEMATICALLOGICANDFORMALLANGUAGES
F.4.1
Computational Theory and Mathematics
010201 computation theory & mathematics
Hardware and Architecture
Conservative extension
TheoryofComputation_LOGICSANDMEANINGSOFPROGRAMS
Russell's paradox
computer
Software
Impredicativity
Subjects
Details
- ISSN :
- 14753081 and 14710684
- Volume :
- 20
- Database :
- OpenAIRE
- Journal :
- Theory and Practice of Logic Programming
- Accession number :
- edsair.doi.dedup.....ba00da3b4431d1652b818d75846b5bbd