home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 8 Other / 08-Other.zip / PMCLIPS.ZIP / SETUP.H < prev    next >
Text File  |  1990-07-10  |  10KB  |  237 lines

  1. /*   CLIPS Version 4.30   4/25/89 */
  2.  
  3. /****************************************************************/
  4. /* This file is the general header file for CLIPS. It contains  */
  5. /* the global definitions used by CLIPS, and the compiler flags */
  6. /* you have to edit to create a version of CLIPS for a specific */
  7. /* system.                                                      */
  8. /*                                                              */
  9. /* If CLIPS is being used as an embedded tool, then this file   */
  10. /* should be included in at least the main program. Any other   */
  11. /* files which contain functions referring to things defined in */
  12. /* this file must also include this file.                       */
  13. /****************************************************************/
  14.  
  15. /****************************************************************/
  16. /* -------------------- COMPILER FLAGS ------------------------ */
  17. /****************************************************************/
  18.  
  19. /****************************************************************/
  20. /* Flag denoting what kind of machine CLIPS is to run on. Only  */
  21. /* one of these flags should be turned on (set to 1) at a time. */
  22. /****************************************************************/
  23.  
  24. #define GENERIC       0   /* Generic CLIPS (any machine)           */
  25. #define VMS           0   /* VAX VMS                               */
  26. #define UNIX_V        0   /* UNIX System V or 4.2bsd or HP Unix    */
  27. #define UNIX_7        0   /* UNIX System III Version 7 or Sun Unix */
  28. #define MAC_LSC       0   /* Apple Macintosh, with Lightspeed C    */
  29. #define IBM_MSC       1   /* IBM PC, with Microsoft C (5.1)        */
  30. #define IBM_LATTICE   0   /* IBM PC, Lattice C (3.0) not tested!   */
  31. #define IBM_TBC       0   /* IBM PC, with Turbo C (1.5 or higher)  */
  32. #define IBM_ZTC       0   /* IBM PC, with Zortech C (1.07)         */
  33.  
  34.  
  35. /****************************************************************/
  36. /* EXTENDED MATH PACKAGE FLAG: If this is on, then the extended */
  37. /* math package functions will be available for use, (normal    */
  38. /* default). If this flag is off, then the extended math        */ 
  39. /* functions will not be available, and the 30K or so of space  */
  40. /* they require will be free. Usually a concern only on PC type */
  41. /* machines.                                                    */
  42. /****************************************************************/
  43.  
  44. #define EX_MATH  1
  45.  
  46. /***********************************************************/
  47. /* TIMING FLAG. If this is on, then CLIPS will call the    */ 
  48. /* clips_time function after executing all possible rules. */ 
  49. /* Usually used only for testing purposes.                 */
  50. /***********************************************************/
  51.  
  52. #define CLP_TIME  0
  53.  
  54. /***************************************************************/
  55. /* TRACK_MEMORY:  If this is on, then CLIPS will keep track of */
  56. /*   how much memory it has allocated through genalloc and     */
  57. /*   genfree.  This number can then be retrieved through the   */
  58. /*   memory function.                                          */
  59. /***************************************************************/
  60.  
  61. #define TRACK_MEMORY 1
  62.  
  63. /****************************************************************/
  64. /* TEXT PROCESSING : Turn on this flag for support of the       */
  65. /* hierarchical lookup system.                                  */
  66. /****************************************************************/
  67.  
  68. #define CLP_TEXTPRO 0
  69.  
  70. /****************************************************************/
  71. /* HELP: To implement the help facility, set the flag below and */
  72. /* specify the path and name of the help data file your system. */
  73. /* This options requires text processing!                       */
  74. /****************************************************************/
  75.  
  76. #define CLP_HELP 0
  77.  
  78. #if CLP_HELP
  79.  
  80. #define HELP_DEFAULT "clips.hlp"
  81.  
  82. #endif
  83.  
  84. /****************************************************************/
  85. /* EDITOR: If this flag is turned on, an integrated EMACS style */
  86. /*   editor can be called directly from CLIPS                   */
  87. /****************************************************************/
  88.  
  89. #define  CLP_EDIT  0
  90.  
  91. #if GENERIC || MAC_LSC                  
  92. #undef CLP_EDIT                         /* Editor can't be used */
  93. #define  CLP_EDIT  0                    /* with Generic or Mac  */
  94. #endif
  95.  
  96. /****************************************************************/
  97. /* RULE COMPILER: If this flag is turned on, you may compile    */
  98. /*   CLIPS rules to C code for a run-time executable.           */
  99. /****************************************************************/
  100.  
  101. #define  CLP_RULE_COMP  1
  102.  
  103. /****************************************************/
  104. /* RUN_TIME:  Produces a run-time module for CLIPS. */
  105. /****************************************************/
  106.  
  107. #define RUN_TIME 0
  108.  
  109. /****************************************************/
  110. /* DEFFACTS_CONSTRUCT:  Determines whether deffacts */
  111. /*   construct is included.                         */
  112. /****************************************************/
  113.  
  114. #define DEFFACTS_CONSTRUCT 1
  115.  
  116. /*************************************************/
  117. /* DEFTEMPLATES:  Determines whether deftemplate */
  118. /*   construct is included.                      */
  119. /*************************************************/
  120.  
  121. #define DEFTEMPLATES 1
  122.  
  123. /*************************************************************/
  124. /* SAVE_FACTS:  Allows inclusion of the functions save-facts */
  125. /*   and load-facts.                                         */
  126. /*************************************************************/
  127.  
  128. #define SAVE_FACTS 1
  129.  
  130. /******************************************************************/
  131. /* STUDENT: Produces a version for use in teaching environments.  */
  132. /*   Limits salience values to -2 to +2 and does not allow if and */
  133. /*   while expressions.                                           */
  134. /******************************************************************/
  135.  
  136. #define STUDENT 0
  137.  
  138. /*******************************************/
  139. /* BASIC_IO: Includes printout, fprintout, */
  140. /*   read, open, and close functions.      */
  141. /*******************************************/
  142.  
  143. #define BASIC_IO 1
  144.  
  145. /***************************************************/
  146. /* EXT_IO: Includes format and readline functions. */
  147. /***************************************************/
  148.  
  149. #define EXT_IO 1
  150.  
  151. /************************************************/
  152. /* STRING_FUNCTIONS: Includes string functions: */
  153. /*   str-length, str-compare, upcase, lowcase,  */
  154. /*   sub-string, str-index, and eval.           */
  155. /************************************************/
  156.  
  157. #define STRING_FUNCTIONS 1
  158.  
  159. /*********************************************/
  160. /* MULTIFIELD_FUNCTIONS: Includes multifield */
  161. /*   functions:  mv-subseq, mv-delete,       */
  162. /*   mv-append, str-explode, str-implode.    */
  163. /*********************************************/
  164.  
  165. #define MULTIFIELD_FUNCTIONS 1
  166.  
  167. /**********************************************************************/
  168. /* ART_CONSTRUCTS: Provides dummy ART constructs such as defrelation  */
  169. /*   and defschema which allow ART constructs to be read from a file, */
  170. /*   but not interpreted. Useful when converting in either direction. */
  171. /**********************************************************************/
  172.  
  173. #define ART_CONSTRUCTS 1
  174.  
  175. /**********************************************************************/
  176. /* BREAKPOINTS:                                                       */
  177. /**********************************************************************/
  178.  
  179. #define BREAKPOINTS 1
  180.  
  181. /***************************************************************************/
  182. /* MAC_SYSTEM: If using MAC_LSC and this flag is set, then SystemTask will */
  183. /*   be called between rule firings. Allows Desk Accessories such as alarm */
  184. /*   clock to continue working while a CLIPS program is running. Will slow */
  185. /*   execution a little bit, but might allow network software among others */
  186. /*   to work.                                                              */
  187. /***************************************************************************/
  188.  
  189. #define MAC_SYSTEM 0
  190.  
  191. /************************************************************************/
  192. /* BLOCK_MEMORY: Causes memory to be allocated in large blocks. MAC_LSC */
  193. /*   option will also cause memory to be allocated in large blocks.     */
  194. /*   INITBUFFERSIZE and BUFFERSIZE should both be set to less than the  */
  195. /*   maximum size of a signed integer. On a 16-bit machine, they should */
  196. /*   be less than 32768.                                                */
  197. /************************************************************************/
  198.  
  199. #define BLOCK_MEMORY 1
  200.  
  201. #if MAC_LSC
  202. #undef BLOCK_MEMORY
  203. #define BLOCK_MEMORY 1
  204. #endif
  205.  
  206. #if BLOCK_MEMORY
  207.  
  208. #define INITBUFFERSIZE 8192   
  209. #define BUFFERSIZE 8192      
  210.  
  211. #endif
  212.  
  213. /*************************************************************************/
  214. /* BLOAD_ONLY:      Enables bload command and disables the load command. */
  215. /* BLOAD:           Enables bload command.                               */
  216. /* BLOAD_AND_BSAVE: Enables bload, and bsave commands.                   */
  217. /*************************************************************************/
  218.  
  219. #define BLOAD_ONLY      0
  220. #define BLOAD           0
  221. #define BLOAD_AND_BSAVE 1
  222.  
  223. /*****************************************************************/
  224. /* WINDOW_INTERFACE : Set this flag if you are recompiling the   */
  225. /*   IBM-PC MS-DOS Window Interface or the Macintosh LSC Window  */
  226. /*   Interface. Currently, when enabled, this flag disables the  */
  227. /*   more processing used by the help system. Note that in order */
  228. /*   to remake IBM-PC window interface, you MUST have the Turbo  */
  229. /*   C Compiler (V1.5 or higher) or the Microsoft C Compiler     */
  230. /*   (V5.1 or  higher) and Aspen Scientific's Curses Screen      */
  231. /*   Management Package (V4.0 or better). In order to remake the */
  232. /*   Macintosh window interface, you must have the LSC compiler. */
  233. /*****************************************************************/
  234.  
  235. #define WINDOW_INTERFACE 1
  236.  
  237.