Annotation of researchv10no/cmd/hoc/hoc.h, revision 1.1

1.1     ! root        1: typedef struct Symbol {        /* symbol table entry */
        !             2:        char    *name;
        !             3:        short   type;
        !             4:        union {
        !             5:                double  val;            /* VAR */
        !             6:                double  (*ptr)();       /* BLTIN */
        !             7:                int     (**defn)();     /* FUNCTION, PROCEDURE */
        !             8:                char    *str;           /* STRING */
        !             9:        } u;
        !            10:        struct Symbol   *next;  /* to link to another */
        !            11: } Symbol;
        !            12: Symbol *install(), *lookup();
        !            13: 
        !            14: typedef union Datum {  /* interpreter stack type */
        !            15:        double  val;
        !            16:        Symbol  *sym;
        !            17: } Datum;
        !            18: extern Datum pop();
        !            19: extern xpop(), eval(), add(), sub(), mul(), div(), mod(), negate(), power();
        !            20: extern addeq(), subeq(), muleq(), diveq(), modeq();
        !            21: 
        !            22: typedef int (*Inst)();
        !            23: #define        STOP    (Inst) 0
        !            24: 
        !            25: extern Inst *progp, *progbase, prog[], *code();
        !            26: extern assign(), bltin(), varpush(), constpush(), print(), varread();
        !            27: extern prexpr(), prstr();
        !            28: extern gt(), lt(), eq(), ge(), le(), ne(), and(), or(), not();
        !            29: extern ifcode(), whilecode(), forcode(), call(), arg(), argassign();
        !            30: extern funcret(), procret();
        !            31: extern preinc(), predec(), postinc(), postdec();
        !            32: extern argaddeq(), argsubeq(), argmuleq(), argdiveq(), argmodeq();

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.