On Feb 25, 8:54 am, Reinier Zwitserloot <[email protected]> wrote: > Okay, so, now, you're saying that the default for just about every > library out there is going to be java[7,8), whereas before you said > that updating list is no problem, because most modules will say they > want the list from java[7,*].
Unmodularized code - which claims no module membership and gives no explicit dependencies - implicitly depends on JDK 6. Assuming no breaking changes in JDK 7, such code can be bound when running on a 7 VM to JDK 7.*. 7.* is also known as known as [7,8). Modularized code - which gives explicit dependencies - can be split into code which a) uses or b) reuses "core" APIs like List. I said "A module using or reusing List should ask for >=7 or 7.* respectively". In fact, it's still pretty naughty to rely on >=7 even if you simply refer to List, since methods might be removed or made less accessible (binary incompatible change), but I can imagine ways the risk might be mitigated by the provider, e.g. JDK 8. > You're not making any sense. What we're mainly discussing is migration compatibility - how an unversioned library uses or reuses versioned libraries. Back in JDK 1.5, the most subtle part of generics was migration compatibility - how a non-generic client uses or reuses generic types. You are keeping me honest by posing your questions, keep them coming :-) 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 -~----------~----~----~----~------~----~------~--~---
