Home // International Journal On Advances in Intelligent Systems, volume 7, numbers 1 and 2, 2014 // View article
Applications of Languages with Self-Interpreters to Partial Terms and Functional Programming
Authors:
Lev Naiman
Keywords: logic; partial-terms; theorem prover; two-valued logic; expression interpreter; functional programming; general recursion; lazy evaluation
Abstract:
Those programming languages that contain self-interpreters have the added power of reflection, and allow dynamically controlling execution. In a logical language a complete self-interpreter is necessarily inconsistent. However, we demonstrate a logical language with a reasonably complete self-interpreter. We argue for its use as a simple formalism for reasoning about partial terms, and functional languages that allow both general recursion and dependent types. Since refinements of programming specifications often include partial terms, they need to be handled using formal rules. Likewise, we show formal rules for handling general recursion consistently in a simple language. Moreover, we demonstrate how to use an interpreter to reason about lazy evaluation. We argue that the interpreter can be integrated within theorem provers.
Pages: 74 to 84
Copyright: Copyright (c) to authors, 2014. Used with permission.
Publication date: June 30, 2014
Published in: journal
ISSN: 1942-2679