code: public static void checkState(boolean condition, String message, Object ... values) {
      if (!condition) {
        throw new EvalError(String.format(message, values));
      }
    }
docs: Identical to Preconditions.checkState but throws an
  {@code EvalError} instead of an IllegalArgumentException.
  Use this check to verify properties of a Lisp program
  execution, i.e., whenever the raised exception should be
  catchable by the evaluator of the program.
  
  @param condition
  @param message
  @param values