19 Oct 2009 21:32
Re: Why Scala 2.8 instead of Scala 3.0?
Lex Spoon <lex@...>
2009-10-19 19:32:34 GMT
2009-10-19 19:32:34 GMT
On Oct 19, 2009, at 2:57 PM, Daniel Sobral wrote: > Alex, it might confuse people new to Scala, which, I admit, is > thankfully most of them. But this situation isn't really new at all > with Scala -- the same can be said of previous minor revisions. > > I think providing binary compatibility between minor releases will > be a feat in itself worthy of a major revision. You beat me to it. > All that notwithstanding, I agree that too much has been said and > printed about Scala 2.8 to, at this point, change it to Scala 3.0. An even stronger argument. In more detail, it's always been the case that new minor versions usually break binary compatibility. They often break source compatibility, but never in any major way that I can remember for the 2.x series. Indeed, I think of 2.x as the cutoff where backwards compatibility of any kind became very important. It hasn't been perfect, but at least it's close. That said, it's wonderful news if 2.8 is anywhere close to binary compatible with 2.7. Very nice work! Stepping back, version numbers are for marketing, and they provide a very narrow stream of information you can convey with it. It's important that that information corresponds to the most important story you want to tell Scala users. Especially this is the case for 3.0. I don't know what 3.x should correspond to, but I bet if you guys take some time you will come up with something more important to you than anything to do with compatibility. Lots of people will go check out what's new with Scala whenever you announce a 3.0 version. It's also very helpful when you bump into people and have 15 second to explain new Scala developments. I bet there's a definition of 3.x that gets people pumped even with just 15 seconds to explain it. By the way, I agree that Java numbering is nearly information free. It's not even just the useless leading "1". 1.5 is vastly different from 1.4, but it got hte same sized bump as 1.1 through 1.4. 1.6 is really minor in comparison, but it got an equal-sized version bump. 1.7 doesn't make any major change, per se, but it looks likely to include piles of new features, much of which come from outside of Sun. On top of it all, "Java 2" is floating around, even though none of the versions have a "2" in them. The most charitable way I can defend this situation is that Sun is better off when people can't tell the difference between Java versions. Perhaps Sun's real message is that all of Java is about the same. > Something I learned in academia: there are three kinds of academic > reviews: review by name, review by reference and review by value. Awesome. Lex