home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 9 / 09.iso / l / l217 / 2.ddi / EXAMPLES / CH12EX03.PRO < prev    next >
Encoding:
Prolog Source  |  1990-03-26  |  491 b   |  18 lines

  1. /*
  2.    Copyright (c) 1986, 90 by Prolog Development Center
  3. */
  4.    
  5. domains
  6.    expr = number(integer); x; log(expr);
  7.           plus(expr, expr); mult(expr, expr)
  8.  
  9. predicates
  10.    writeExp(expr)
  11.  
  12. clauses
  13.    writeExp(x) :- write('x').
  14.    writeExp(number(No)) :- write(No).
  15.    writeExp(log(Expr)) :- write("log("), writeExp(Expr), write(')').
  16.    writeExp(plus(U1, U2)) :- writeExp(U1), write('+'), writeExp(U2).
  17.    writeExp(mult(U1, U2)) :- writeExp(U1), write('*'), writeExp(U2).
  18.