FRulekit: A Frame-Based Production System
Peter Shell, Jaime Carbonell · KiltHub Repository · 2018
FRulekit is an experimental production system written in Commonlisp. At its core is an augmented implementation of the OPS Rete pattern matcher.1 As well as the standard OPS5 conflict resolution strategies of LEX and MEA and an extended strategy, it also allows users to write their own conflict strategies, and incorporates an agenda system for controlling the ordering of rules. It has a trace package which makes it possible to build rule-learning strategies, and supports reason maintenance. FRulekit stands for Frame-Rulekit since working memory elements are frames, and matching against frames are supported. It uses the Parmenides frame system, so it is assumed that the reader is also familiar with this frame program.