shouldn't there be a version of Module#included_modules or #ancestors which actually returns the uncrippled list of included modules at the immediate level? Current versions of those two methods only lists them recursively and don't count repeated inclusion. I want the stuff that's really written in the Module, not some predigested version. also I'd like a method to find whether an object has a singleton class, without creating one. This is not possible because Object itself doesn't have an #extended_modules, though it has a #singleton_methods. matju