// Note: this loads all classes declared in program static L> nonAbstractClassesImplementing(Class base) { L> l = new L; for (S name : myClasses()) { Class c = _getClass(name); if (!isAbstract(c) && isSubtypeOf(c, base)) l.add(c); } ret l; }