Authors/Contributors

Hamid Bacha, Syracuse University

Document Type

Report

Date

1988

Embargo Period

4-25-2012

Keywords

MetaProlog

Language

English

Disciplines

Computer Sciences

Description/Abstract

MetaProlog is a logic-based programming language which subsumes the full Prolog language. This implementation is an incremental compiler (which also looks and feels like an interpreter) supporting meta-level constructs that are usually provided by the underlying architecture in other systems and are not directly available to the user. The most obvious feature of MetaProlog is the ability to handle multiple databases (referred to as theories) at the same time. In contrast to ordinary Prolog’s single-theory database, a MetaProlog database is a collection of theories. A theory is a first-class object and can be passed around as the value of a variable. In fact, proofs are handled through the demo predicate which takes a theory as its first argument and a goal as its second argument: demo(Theory, Goal). The demo predicate is a meta-level construct which witnesses the derivability of the given goal from the given theory. Theories are collections of viewpoints (clauses and facts). The word viewpoint is used to reflect the fact that the same relation may be present in many theories with slight or substantial variations from one theory to the other. Each theory is then seen as having its own viewpoint on that given relation.

Source

local

Share

COinS
 
 

To view the content in your browser, please download Adobe Reader or, alternately,
you may Download the file to your hard drive.

NOTE: The latest versions of Adobe Reader do not support viewing PDF files within Firefox on Mac OS and if you are using a modern (Intel) Mac, there is no official plugin for viewing PDF files within the browser window.