public class NumericLiteral implements Expression {
    protected double val;
    public NumericLiteral(double val) { this.val = val; }
    public double value() { return val; }
    public Object visit(ExpressionVisitor v) {
        return v.visitNumericLiteral(this);
    }
    public String toString() { return Double.toString(val); }
}
