Index of /atarilibrary/atari_cd04/EXPERTSY/CLIPS

      Name                    Last modified       Size  Description

[DIR] Parent Directory 11-May-2007 21:03 - [TXT] BLOCKS.CLP 01-Sep-1993 06:51 2k [TXT] CLIPS.TOS 01-Sep-1993 06:51 111k [DIR] CLIP_DOC/ 11-May-2007 21:03 - [TXT] DILEMMA.CLP 01-Sep-1993 06:54 4k [TXT] LIFE.CLP 01-Sep-1993 06:54 5k [TXT] MAB.CLP 01-Sep-1993 06:54 9k [TXT] MAB2.CLP 01-Sep-1993 06:54 9k [TXT] TTT.CLP 01-Sep-1993 06:54 7k [TXT] WINE.CLP 01-Sep-1993 06:54 11k


  CLIPS is a general purpose expert system shell devloped by NASA
at Johnson Space Flight Center. I have ported it over to the Atari
using Mark Williams C.  I have arced the system into 3 arc files:

                CLIPS.ARC - The executable and example files
                CLIPSSRC.ARC - THE CLIPS source code
                CLIPSDOC.ARC - The documentation

  The example files contained in clips.arc are meant only as examples.
They are not end user type of programs.  CLIPS programs tend to run 
fairly fast (for expert system type programs).  It runs on the IBM PC,
SUN Workstations, VAX, and now the Atari ST.  It can be eaisly ported
to any system that has a full K&R C compiler and sufficent memory
(about 200k+).

  I had a problem with the MWC compiler; it kept dying when I tried to
compile CLIPS.C.  I wrote Mark Williams Co. and sent them a copy of the
source code (on disk); they wrote back and said that I had indeed found
a bug in the compiler.  To fix the problem I had to make a change in the
file structde.h from:

struct funtab
  {
   char *fun_name; /* function name */
   char fun_type;  /* function type */
   int (*ip)();
   char (*cp)();
   char *(*sp)();
   float (*fp)();
   struct funtab *next;
  };

To:

struct funtab
  {
   char *fun_name; /* function name */
   char fun_type;  /* function type */
   int (*ip)();
   char (*cp)();
   char *(*sp)();
   double (*fp)();
   struct funtab *next;
  };

If you are going to port CLIPS to another compiler you might want to try
changing back to the original version.  If anybody does port CLIPS over
to another compiler I would be intersted in hearing what kind of times
they come up with for the MAB.CLP program.  This is a standard benchmark
that is sometimes used for measuring expert system performance. From
"Bemchmarking Expert system Tools" by Gary Riley:

Tool (version)         Machine                       Time

ART(V2.0)             Symbolics                       1.2
CLIPS(V3.0)           SUN                             1.2
OPS5(VAX 2.0)         VAX                             1.3
OPS5(Forgy VPS2)      Symbolics                       1.7
ART(V2.0)             TI Explorer                     2.4
CLIPS(V3.0)           VAX                             2.5
OPS5+(V2.0003)        IBM AT                          5.2
CLIPS(V3.0)           IBM AT                          7.0
OPS5+(V2.0002)        Macintosh                      14.0
OPS5+(V2.0002)        IBM PC                         19.0
CLIPS(V3.0)           IBM PC                         21.1


MAB.CLP runs in about 7 secs on the ST.  It would probably run a little
faster under another compiler since MWC tends to run a little on the 
slow side (in they're favor they have a VERY complete compiler).  Remember
these are just benchmarks and should not be taken to seriously

  The documentation provided with CLIPS is very good and contains 12
tutorial files.  I also recomend Building Expert Systems by Frederick
Hayes-Roth as a good introduction to the expert system area.

  At the moment I am not planing to do much more than experiment with
CLIPS but I may add some extra features (like graphics) and I'll try to
fix any problems that crop up.  If you find any problems I can be reached
at either:
           Bloom County BBS 205-772-8526

      or
           Huntsville Atari Users Group (HAUG) BBS 205-461-7893

      or by US Mail

           Luke Hoffman
           6509-D Whispering Pines Trail
           Huntsville
           Ala., 35805

I'll post any new versions on Bloom County and HAUG as soon as they come
available.
                                     Luke Hoffman
                                     5/10/87