Regarding "added weight of compatibility stuff I will never use", one of the main reasons I proposed this is that allows devlopers to decide on a per-case basis when and where to support backward compatibility. I.e. if the code .vs. benefit analysis doesn't make sense, don't support it.
T.J, You make a good point about testing. Testing complexity to be part of the benefit analysis. I provided the delay() method above as one example of where this might make sense. But let me point to another example where I think conditional backward compatibility would have been tremendously valuable: The Hash API change that happened in v1.6. This broke a _lot_ of code, and was a significant hurdle to teams that wanted to upgrade. At Zenbe, the 1.6 release put us in a real bind - it had a lot of exciting new features, features that we desperately wanted (e.g. real subclassing support), but we simply couldn't afford the time required to identify and fix the 100's of dependencies we had on Hash in our code base. We ended up using a monkey-patched version of 1.6 on our production site for several months, while using the "real" version of 1.6 in development and testing. It would have been great to have a switchable compatibility option in that case. I'll risk shooting my own idea in the foot by pointing out that the biggest issue with this idea is not what effect it has on the code, but rather slippery slope it starts down. Once you start providing Compatibility support for one or two features, users are going to start clamoring for it all over the place. There should probably be some firm guidelines about what factors decide whether or not a feature supports this, and for what versions Compatibility support will be provided for. (E.g. "Compatibility is only offered for the previous dot-release" or something like that.) On Oct 11, 2:46 pm, Allen Madsen <bla...@gmail.com> wrote: > I have to agree with T.J. In addition to complexity, there is also a > concern for size. If I am using the newest version of the code, why > would I want the added weight of compatibility stuff I will never use? > > Allen Madsenhttp://www.allenmadsen.com --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Prototype: Core" group. To post to this group, send email to prototype-core@googlegroups.com To unsubscribe from this group, send email to prototype-core-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/prototype-core?hl=en -~----------~----~----~----~------~----~------~--~---