// $Id: Expression.scala,v 1.1 2005/10/28 20:46:16 leavens Exp leavens $
package interp;

/** Grammar for expressions. */
trait Expression;
/** Literals (numbers) */
case class LitExp(datum: Long) extends Expression;
/** Variable references. */
case class VarExp(id: Symbol) extends Expression;
/** Application of primitives */
case class PrimAppExp(prim: Primitive, rands: List[Expression]) extends Expression;
