An Application of Rational Trees in a Logic Programming Interpreter for a Procedural Language

dc.creatorCarro, Manuel
dc.date2004-03-16
dc.date.accessioned2026-07-07T03:21:02Z
dc.date.available2026-07-07T03:21:02Z
dc.descriptionWe describe here a simple application of rational trees to the implementation of an interpreter for a procedural language written in a logic programming language. This is possible in languages designed to support rational trees (such as Prolog II and its descendants), but also in traditional Prolog, whose data structures are initially based on Herbrand terms, but in which implementations often omit the occurs check needed to avoid the creation of infinite data structures. We provide code implementing two interpreters, one of which needs non-occurs-check unification, which makes it faster (and more economic). We provide experimental data supporting this, and we argue that rational trees are interesting enough as to receive thorough support inside the language.
dc.descriptionLaTeX2e, 13 pages, 2 tables, 11 figures (several of them, text). Yet unpublished
dc.identifierhttps://arxiv.org/abs/cs/0403028
dc.identifierhttp://arxiv.org/abs/cs/0403028
dc.identifier.urihttp://salesiana.dossiersoluciones.com/handle/123456789/32045
dc.subjectData Structures and Algorithms
dc.subjectLogic in Computer Science
dc.subjectD.1.6 ; D.3.2 ; D.3.3 ; D.3.4 ; E.1 ; E.2
dc.titleAn Application of Rational Trees in a Logic Programming Interpreter for a Procedural Language
dc.typetext

Files

Collections