home *** CD-ROM | disk | FTP | other *** search
/ Super Net 1 / SUPERNET_1.iso / PC / OTROS / MSDOS / WATTCP / DELFT / SAGE.TAR / sage / scheme / schprc.h < prev    next >
Encoding:
C/C++ Source or Header  |  1991-04-26  |  5.7 KB  |  125 lines

  1. /**********************************************************************
  2. ** MODULE INFORMATION*
  3. **********************
  4. **      FILE     NAME:       SCHPRC.H
  5. **      SYSTEM   NAME:       SCHEME
  6. **      ORIGINAL AUTHOR(S):  Alfred Kayser
  7. **      VERSION  NUMBER:     1.5.5
  8. **      CREATION DATE:       88/03/21
  9. **
  10. ** DESCRIPTION: This module contains definitions of the essential
  11. **              and some optional scheme functions.
  12. ***********************************************************************
  13. ** CHANGES INFORMATION **
  14. *************************
  15. ** REVISION:    $Revision:   1.0  $
  16. ** CHANGER:     $Author:   JAN  $
  17. ** WORKFILE:    $Workfile:   schprc.h  $
  18. ** LOGFILE:     $Logfile:   C:/CPROG/SCHEME/VCS/SCHPRC.H_V  $
  19. ** LOGINFO:     $Log:   C:/CPROG/SCHEME/VCS/SCHPRC.H_V  $
  20. **              
  21. **                 Rev 1.0   12 Oct 1989 11:43:28   JAN
  22. **              Initial revision.
  23. **********************************************************************/
  24.  
  25. #include "schdef.h"
  26.  
  27. struct {
  28.        char *name;
  29.        int nargs;
  30.        } funs[]= {
  31.  
  32. /** IP_EOF       **/ { "*EOF*",                 0 },  /*  0 */
  33. /** IP_DEFINE    **/ { "DEFINE",                2 },  /*  1 */
  34. /** IP_QUOTE     **/ { "QUOTE",                 1 },  /*  2 */
  35. /** IP_LAMBDA    **/ { "LAMBDA",                2 },  /*  3 */
  36. /** IP_IF        **/ { "IF",                    2 },  /*  4 */
  37. /** IP_SET       **/ { "SET!",                  2 },  /*  5 */
  38. /** IP_BEGIN     **/ { "BEGIN",                 0 },  /*  6 */
  39. /** IP_COND      **/ { "COND",                  0 },  /*  7 */
  40. /** IP_CASE      **/ { "CASE",                  2 },  /*  8 */
  41. /** IP_LET       **/ { "LET",                   2 },  /*  9 */
  42. /** IP_LETA      **/ { "LET*",                  2 },  /* 10 */
  43. /** IP_LETREC    **/ { "LETREC",                2 },  /* 11 */
  44. /** IP_MACRO     **/ { "MACRO",                 2 },  /* 12 */
  45. /** IP_DO        **/ { "DO",                    2 },  /* 13 */
  46. /** IP_DELAY     **/ { "DELAY",                 1 },  /* 14 */
  47. /** IP_APPLY     **/ { "APPLY",                 2 },  /* 15 */
  48. /** IP_EVAL      **/ { "EVAL",                  1 },  /* 16 */
  49. /** IP_CONS      **/ { "CONS",                  2 },  /* 17 */
  50. /** IP_LIST      **/ { "LIST",                  0 },  /* 18 */
  51. /** IP_NULL      **/ { "NULL?",                 1 },  /* 19 */
  52. /** IP_NOT       **/ { "NOT",                   1 },  /* 20 */
  53. /** IP_AND       **/ { "AND",                   0 },  /* 21 */
  54. /** IP_OR        **/ { "OR",                    0 },  /* 22 */
  55. /** IP_EXIT      **/ { "EXIT",                  0 },  /* 23 */
  56. /** IP_BREAK     **/ { "BREAK",                 0 },  /* 24 */
  57. /** IP_COLLECT   **/ { "VERSION",               0 },  /* 25 */
  58. /** IP_COLLECT   **/ { "COLLECT",               0 },  /* 26 */
  59. /** IP_TRUE      **/ { "#T",                    0 },  /* 27 */
  60. /** IP_INVIS     **/ { "",                      0 },  /* 28 */
  61. /** IP_UNDEF     **/ { "*UNDEFINED*",           0 },  /* 29 */
  62. /** IP_ELS       **/ { "ELSE",                  0 },  /* 30 */
  63.  
  64. /** IP_ASSQ      **/ { "ASSQ",                  2 },
  65. /** IP_ASSV      **/ { "ASSV",                  2 },
  66. /** IP_ASSOC     **/ { "ASSOC",                 2 },
  67.  
  68. /** IP_SETCAR    **/ { "SET-CAR!",              2 },
  69. /** IP_SETCDR    **/ { "SET-CDR!",              2 },
  70. /** IP_CHAREQ    **/ { "CHAR=?",                2 },
  71. /** IP_CHARLT    **/ { "CHAR<?",                2 },
  72. /** IP_CHARLE    **/ { "CHAR<=?",               2 },
  73. /** IP_CHARGT    **/ { "CHAR>?",                2 },
  74. /** IP_CHARGE    **/ { "CHAR>=?",               2 },
  75. /** IP_CHAREQCI  **/ { "CHAR-CI=?",             2 },
  76. /** IP_CHARLTCI  **/ { "CHAR-CI<?",             2 },
  77. /** IP_CHARLECI  **/ { "CHAR-CI<=?",            2 },
  78. /** IP_CHARGTCI  **/ { "CHAR-CI>?",             2 },
  79. /** IP_CHARGECI  **/ { "CHAR-CI>=?",            2 },
  80.  
  81. /** IP_MEMQ      **/ { "MEMQ",                  2 },
  82. /** IP_MEMV      **/ { "MEMV",                  2 },
  83. /** IP_MEMBER    **/ { "MEMBER",                2 },
  84. /** IP_EQ        **/ { "EQ?",                   2 },
  85. /** IP_EQV       **/ { "EQV?",                  2 },
  86. /** IP_EQUAL     **/ { "EQUAL?",                2 },
  87.  
  88. /** IP_TIMEEQ    **/ { "TIME=?",                2 },
  89. /** IP_TIMELT    **/ { "TIME<?",                2 },
  90. /** IP_TIMELE    **/ { "TIME<=?",               2 },
  91. /** IP_TIMEGT    **/ { "TIME>?",                2 },
  92. /** IP_TIMEGE    **/ { "TIME>=?",               2 },
  93.  
  94. /** IP_ISTIME    **/ { "TIME?",                 1 },
  95. /** IP_ISSYM     **/ { "SYMBOL?",               1 },  
  96. /** IP_ISATOM    **/ { "ATOM?",                 1 },
  97. /** IP_ISBOOL    **/ { "BOOLEAN?",              1 },
  98. /** IP_ISLIST    **/ { "LIST?",                 1 },
  99. /** IP_ISPROC    **/ { "PROCEDURE?",            1 },
  100. /** IP_ISCHAR    **/ { "CHAR?",                 1 },
  101. /** IP_ISPORT    **/ { "PORT?",                 1 },
  102. /** IP_ISBIGNUM  **/ { "BIGNUM?",               1 },
  103. /** IP_ISRAT     **/ { "RATIONAL?",             1 },
  104. /** IP_COMPLEX   **/ { "COMPLEX?",              1 },
  105. /** IP_ISNUMBER  **/ { "NUMBER?",               1 },
  106. /** IP_ISPAIR    **/ { "PAIR?",                 1 },
  107. /** IP_ISSTR     **/ { "STRING?",               1 },
  108. /** IP_ISEOF     **/ { "EOF-OBJECT?",           1 },
  109. /** IP_EXACT     **/ { "EXACT?",                1 },
  110. /** IP_ISOPORT   **/ { "OUTPUT-PORT?",          1 },
  111. /** IP_INEXACT   **/ { "INEXACT?",              1 },
  112. /** IP_ISIPORT   **/ { "INPUT-PORT?",           1 },
  113. /** IP_ISINT     **/ { "INTEGER?",              1 },
  114. /** IP_ISREAL    **/ { "REAL?",                 1 },
  115. /** IP_ISVECTOR  **/ { "VECTOR?",               1 },
  116.  
  117. /** IP_ISCHALPHA **/ { "CHAR-ALPHABETIC?", 1},
  118. /** IP_ISCHNUMER **/ { "CHAR-NUMERIC?", 1 },
  119. /** IP_ISCHWHITE **/ { "CHAR-WHITESPACE?", 1 },
  120. /** IP_ISCHUPERR **/ { "CHAR-UPPER-CASE?", 1 },
  121. /** IP_ISCHLOWER **/ { "CHAR-LOWER-CASE?", 1 },
  122.  
  123. };
  124.  
  125.