On Feb 24, 6:15 am, Reinier Zwitserloot <[email protected]> wrote: > Nope, if you want version 7 of List, you can't even use version 9 of > List, because version 9 of List declares 'filter', which you can't > work with. The module system does not,as far as I can tell, allow you > to make the distinction: "I'm just using these" and "I'm extending > list, and therefore you can't give me version 9, or there's a runtime > error when I don't have my filter method".
Again, where is your evidence for these statements? Let me inject some reality: - A module which asks for version >=7 of List because it uses (but does not extend) List can work with version 9, no problem. The presence of additional List methods makes no difference. - A module which asks for version >=7 of List and extends List cannot work with version 9 because adding methods to an interface is source- incompatible. (The usual javac error will result when compiling the extension of List.) A module containing a type that extends List should ask for version 7.* of List, since source-incompatible changes should not be made under the same major version (7). Therefore, the module system can discriminate between "safe" use (references to List) and slightly more "dangerous" reuse (subclassing/ subtyping). > Your rant on closures being seen as the key to the life of java: Who > here in this thread has claimed that java is going to die without > closures, and is going to be the best of the best with them? You're > arguing against a straw man. One paragraph does not a rant make. The gist of many discussions on "closures" is that "everyone" wants them and that Java is dead without them because people will flock to Fan/Groovy/Scala/Ruby. I am an enormous fan of Scala, but I recognize that Java and Scala have complementary, not competing, roles. I look forward post-JDK7 to better interoperation of the statically typed JVM languages; perhaps that will come for free if the dynamic typing guys agree on a MOP. Alex --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "The Java Posse" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/javaposse?hl=en -~----------~----~----~----~------~----~------~--~---
