Towards a Study of Meta-Predicate Semantics
Paulo Moura

TL;DR
This paper compares different design choices for meta-predicate semantics in Prolog and Logtalk, analyzing their implications on expressiveness, safety, portability, and performance to inform better implementation and usage practices.
Contribution
It provides a comprehensive comparison of meta-predicate semantics across systems, highlighting the practical consequences of various design decisions.
Findings
Different semantics affect meta-predicate safety and portability.
Design choices influence expressiveness and performance.
Insights aid in debating and improving meta-predicate implementations.
Abstract
We describe and compare design choices for meta-predicate semantics, as found in representative Prolog module systems and in Logtalk. We look at the consequences of these design choices from a pragmatic perspective, discussing explicit qualification semantics, computational reflection support, expressiveness of meta-predicate declarations, safety of meta-predicate definitions, portability of meta-predicate definitions, and meta-predicate performance. Our aim is to provide useful insight for debating meta-predicate semantics and portability issues based on actual implementations and common usage patterns.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Software Engineering Research · Topic Modeling
