Path: utzoo!dptcdc!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!cs.utexas.edu!uunet!mcvax!unido!uklirb!shell From: kessler@cons.utah.edu (Robert R. Kessler) Newsgroups: comp.ai.shells Subject: FROBS Keywords: frames, expert system shells, object-oriented programming Message-ID: <4604@uklirb.UUCP> Date: 14 Apr 89 20:26:07 GMT Sender: shell@uklirb.UUCP Reply-To: "Robert R. Kessler" Organization: University of Utah Lines: 45 Approved: shell@uklirb.uucp This is to announce the availability of a Common Lisp package, FROBS, which is a system merging Frames and Objects into a single paradigm. As an object system, FROBS offers multiple inheritance, methods, generic function calling syntax, private methods, generic slots, and something we call context-based inheritance. From the object-oriented standpoint, it has many of the features of CLOS (and could probably be implemented on CLOS if we had someone to do it). From the Frames side, FROBS provides the kinds of operations that you would expect of a frame system, class instances, daemons, access to slot values via inheritance, etc. There is also a forward-chaining rule system which permits rule-based programming using FROBS as the data structure. The rule system is very efficient, as each rule translates into a piece of Lisp code, which can then be compiled by your CL compiler. The merging of the two paradigms is particularily nice from the object-oriented standpoint, as an application may be developed ignoring the frames aspects, and later add rule-based parts at the implementors discretion. FROBS has been in use at Utah and other sites for about 1.5 years and was originally developed as an MS thesis by Eric Muehle, now of Martin Marietta. It has been tested in at least three different dialects of Common Lisp (HPCL, Lucid, KCL -- there may be more, that is all that I know about). It has been used in strict object-oriented applictions, like VLSI design, a graphical programming system, and others. It has also been used as an expert system shell to teach an expert systems class, and in a couple of expert systems theses (one to determine meshes for a finite element package and another for determining tools and tool paths for a CAD to NC milling machine package). FROBS is available without warranty in source code form by anonymous FTP from cs.utah.edu under the pub directory as a compressed tar file: frobs.tar.Z. It includes an 80 page manual in LaTeX format. FROBS may be freely distributed as long as no commercial gain comes from its use, or systems developed from it. Commercial licenses can be negotiated with Utah. If you pick up a copy, please send mail to frobs-request@cs.utah.edu and we will add you to the frobs mailing list (frobs@cs.utah.edu) for reports of features, bugs, etc. Enjoy. B.