Fluents: A refactoring of prolog for uniform reflection and interoperation with external objects

11Citations
Citations of this article
2Readers
Mendeley users who have this article in their library.
Get full text

Abstract

On top of a simple kernel (Horn Clause Interpreters with LD-resolution) we introduce Fluents, high level stateful objects which empower and simplify the architecture of logic programming languages through reflection of the underlying interpreter, while providing uniform interoperation patterns with object oriented and procedural languages. We design a Fluent class hierarchy which includes first-class stateful ob- jects representing the meta-level Horn Clause Interpreters, file, URL, socket Readers and Writers, as well as data structures like terms and lists, with high-level operations directly mapped to iterative constructs in the underlying implementation language. Fluents melt naturally in the fabric of Logic Programming languages and provide elegant com- position operations, reusability, resource recovery on backtracking and persistence. The Web site of our Kernel Prolog prototype, http://www.binnetcorp.com/kprolog/Main.html allows the reader to try out online the examples discussed in this paper.

Cite

CITATION STYLE

APA

Tarau, P. (2000). Fluents: A refactoring of prolog for uniform reflection and interoperation with external objects. In Lecture Notes in Artificial Intelligence (Subseries of Lecture Notes in Computer Science) (Vol. 1861, pp. 1225–1239). Springer Verlag. https://doi.org/10.1007/3-540-44957-4_82

Register to see more suggestions

Mendeley helps you to discover research relevant for your work.

Already have an account?

Save time finding and organizing research with Mendeley

Sign up for free