Auxiliary C Code


TOKEN cons(item, list)  /* link item to list */
  TOKEN item, list;
  { item-> link = list;
    return item;
  }

TOKEN binop(op, lhs, rhs)  /* reduce binary op */
  TOKEN op, lhs, rhs;
  { op-> operands = lhs;    /* link opnds to op */
    lhs-> link = rhs;       /* link 2nd operand */
    rhs-> link = NULL;      /* terminate opnds  */
    return op;
  }

TOKEN makeprogn(tok, statements) /* make progn */
  TOKEN tok, statements;
  {  tok-> tokentype = OPERATOR;  /* change tok */
     tok-> whichval = PROGNOP;    /* to progn*/
     tok-> operands = statements;
     return tok;
   }

Contents    Page-10    Prev    Next    Page+10    Index