         object *pair = first(env);
         if (pair != NULL) {
           object *val = cdr(pair);
-          if (numberp(val)) val = number(val->integer);
+          if (integerp(val)) val = number(val->integer);
           push(cons(car(pair), val), envcopy);
         }
         env = cdr(env);

object *fn_zerop (object *args, object *env) {
  (void) env;
  int arg = integer(first(args));
  if (arg == 0) return tee;
  else return nil;
}

object *fn_oddp (object *args, object *env) {
  (void) env;
  int arg = integer(first(args));
  if ((arg & 1) == 1) return tee;
  else return nil;
}

object *fn_evenp (object *args, object *env) {
  (void) env;
  int arg = integer(first(args));
  if ((arg & 1) == 0) return tee;
  else return nil;
}

// Characters

  return number(result);
}

object *fn_minfn (object *args, object *env) {
  (void) env;
  int result = integer(first(args));
  args = cdr(args);
