%@ page language="java" contentType="text/html" %> <%-- Include common initialisation code --%> <%@ include file="/arch/common.jsp" %> <%-- The current tab --%> <% String currentTab = "Research"; %> <%-- Content of navigation pane --%> <%@ include file="nav.jsp" %> <% showCurrentLink=true; %> <%-- Current navigation location --%> <% String currentNav = "Reports and Theses"; %> <%-- Include the code for the document header --%> <%@ include file="/arch/header.jsp" %>
I.D. Craig, Rule Interpreters in ELEKTRA (August 1, 1991).
In this paper, we describe a number of rule interpreters, each of which is presented in production rule form. Each of the interpreters can be executed as an ordinary ELEKTRA ruleset which interprets all or some of the rules in an ELEKTRA system. The interpreters, therefore, override the default behaviour of the ELEKTRA interpreter. Some of the interpreters that we describe are capable of interpreting themselves: others can be combined into larger, reflective interpreters. The aim of the paper is not, however, to show how sophisticated reflective processing can be achieved in ELEKTRA, but, rather, to show that ELEKTRA is powerful enough to support a wide variety of different interpreters without requiring any changes to its code. None of the interpreters requires additional system code in order to work: ELEKTRA provides all of the facilities used by the rulesets as part of its standard library. This paper is offered as additional evidence of the enormous power of the ELEKTRA system.