• Publications
  • Influence
A logical framework for reasoning about logical specifications
We present a new logic, Linc, which is designed to be used as a framework for specifying and reasoning about operational semantics. Linc is an extension of first-order intuitionistic logic with aExpand
From Operational Semantics for Abstract Machines
We consider the problem of mechanically constructing abstract machines from operational semantics, producing intermediate-level specifications of evaluators guaranteed to be correct with respect toExpand
Compiler verification in LF
A methodology for the verification of compiler correctness based on the LF logical framework as realized within the Elf programming language is presented. This technique is used to specify,Expand
From operational semantics to abstract machines: preliminary results
This paper illustrates how a high-level description of evaluation using inference rules can be systematically transformed into a low-level abstract machine by removing dependencies on high- level features of the meta-logic until the resulting inference rules are so simple that they can be immediately identified as specifying an abstract machine. Expand
Extended Natural Semantics
  • J. Hannan
  • Computer Science
  • J. Funct. Program.
  • 1 April 1993
We extend the definition of natural semantics to include simply typed A-terms, instead of firstorder terms, for representing programs, and to include inference rules for the introduction andExpand
Enriching a Meta-Language With Higher-Order Features
It is argued that this extension of natural semantics yields a more natural and powerful meta-language than the related first-order system and can be compiled into the higher-order logic programming language XProlog. Expand
Lambda-Prolog: An Extended Logic Programming Language
This work describes a class of formulas called higher-order hereditary ttarrop formulas which play a role in AProlog that is similar to the role of positive Horn clauses in Prolog, and investigates how the mechanisms of),Prolog can be used to implement theorem provers, program transformers, and natural language understanding systems. Expand
Uses of Higher-Order Unification for Implementing Program Transformers
This paper details some properties of higher-order unification that make it suitable for analyzing program structures and presents (in λProlog) the specification of several simple program transformers together with a more involved partial evaluator. Expand
Object organization on parallel broadcast channels in a global information sharing environment
A scheme for object organization along parallel broadcast channels is proposed to provide load balancing among different channels and to cluster related objects along all channels. Expand
A Meta-Logic for Functional Programming