@Override
	public Value run(CodeBlock b) throws InterpreterException {
		if (args_ != null || getArgsNumber()==0) {
			Value[] vals = new Value[getArgsNumber()];
			for (int i = 0; i < vals.length; i++) {
				vals[i] = args_[i].run(b);
			}
			try {
				Value v = function_.evaluate(vals);
				return v;
			} catch (Exception e) {
				throw new InterpreterException(e.getMessage(), getLine());
			}
		}
		return new Value();
	}