lakshman@ATHENA.MIT.EDU (09/13/87)
Hi! Does anybody have a source code for creating objects with inheritence capabilities and other standard stuff in PROLOG that can be made available in the public domain ? Jaideep Ganguly
miller@DOUGHNUT.CS.ROCHESTER.EDU (Brad Miller) (09/17/87)
Date: Sun, 13 Sep 87 14:55:07 EDT From: lakshman@ATHENA.MIT.EDU Hi! Does anybody have a source code for creating objects with inheritence capabilities and other standard stuff in PROLOG that can be made available in the public domain ? Jaideep Ganguly Our HORNE system might do what you want, though it doesn't produce PROLOG, it does produce horn clauses. HORNE is a prolog-like language, with a sublanguage: REP that is pretty much like KL-1 but does certain things more intelligently (in our opinion), like use e-unification to assign values to slots which allows you to deal with the value of a slot that has not yet been assigned better than if it were only a variable; types are supported on objects and variables; variables can be constrained with arbitrary predicates, etc. etc. REP objects have roles which are inherited in the type hierarchy. (that is, if you define a type ACTION with role ACTOR and a subtype of ACTION as, say, HIT, it will also have an ACTOR role since it's parent type does. TR is available, send $2.50 to Gail Cassell, TR Secretary @ the phys address in the header to this note if you want more info. The code for HORNE/REP is written in CL using some ZL extensions, and runs on the symbolics 7.1 or TI 2.1 systems (soon 3.0). Unfortunately, its also pretty much unsupported: about a year ago we started to rewrite it from the ground up to handle contextual reasoning, and provide other major enhancements, and the result, RHET, will probably not be publically available until the spring. (on the other hand, it may be worth waiting for: HORNE is pretty crufty being a translation from franz and showing the stretch marks of an active research tool of several years). Neither are strictly in the public domain, but the non-commercial licence (for HORNE/REP) is for a site and only $150. You are free to reuse the code as you like. I'm not familiar with other legal details, you can ask Peg for a licence agreement if you are interested or curious. Basically it's just something that says we don't care what you do with it, but we are absolved of any responsibility. At any rate, if you were to get HORNE/REP; REP sits on top of HORNE and produces horn clauses as I said; you may be able to play with the code and have it produce PROLOG forms instead, though I think it does depend on being able to create variables with types and/or constraints. (even that can be modeled in pure PROLOG, it just might be more work than you are willing to invest)... Hope this helps, Brad Miller ------ miller@cs.rochester.edu {...[allegra|seismo]!rochester!miller} Brad Miller University of Rochester Computer Science Department