public LispObject execute(LispObject[] args) throws ConditionThrowable { if (args.length < 1 || args.length > 2) return error(new WrongNumberOfArgumentsException(this)); Package pkg; if (args.length == 2) pkg = coerceToPackage(args[1]); else pkg = getCurrentPackage(); if (args[0] instanceof Cons) { LispObject list = args[0]; while (list != NIL) { pkg.unusePackage(coerceToPackage(list.car())); list = list.cdr(); } } else pkg.unusePackage(coerceToPackage(args[0])); return T; }