6 ms·
It also means that the main designer of the Scala language is not working on Scala but on a language that will "eventually" become the future of Scala, which me
by nrinaudo 10y ago
It also means that the main designer of the Scala language is not working on Scala but on a language that will "eventually" become the future of Scala, which means that, right now, dotty is not the future of Scala.
A lot of very smart people seem to be very excited about that, I can't help but find it ominous.
- enlait 10y agoAside from very much needed java 8 support in 2.12, Scala, IMO, has little need for more bells and whistles. Making a sound and coherent foundation instead would be much appreciated. Will it break a lot of codebases? Yes, it will.
- grogs 10y agoWhich is what Dotty is attempting to do, but hopefully with minimal codebase breakage. There's a tradeoff between breakage and improvement, but I'd like not to wait 10 years before I can use dotty (like python 2 to python 3). We can always have another dotty in 5 years time for another round of rationalisation/simplification.
- sandisk5 10y ago> It also means that the main designer of the Scala language is not working on Scala No, it means that person is not working only on Scala, or rather the current implementation of Scala. People can work on multiple projects over the course of a year/years. > on a language that will "eventually" become the future of Scala You changed "Is it the future Scala? Yes, it will be - eventually" (I think can best be reworded "eventually be the future Scala") to "eventually become the future of Scala." To me, those have different connotations. The former means that it's not finished yet, but when it is it will be the base of Scala at that time. The latter implies, to me, that at some time in the future this will be the base of Scala at some time further in the future. > which means that, right now, dotty is not the future of Scala And here's where that different meaning leads you wrong. dotty is the future of Scala right now, but it's not that future Scala yet. > A lot of very smart people seem to be very excited about that, I can't help but find it ominous. People are generally happy to have to the creator of something they like working on its future. Scala is being maintained. Improvements and releases are being made in the meantime. More than one person can work on Scala, and a single person can work on multiple aspects of Scala. Big changes like dotty are being carefully planned and executed at the same time other changes are made. People are excited that Scala is continuing to evolve and becoming a better language, and that a beloved innovator/creator is playing a significant role in that.
- nrinaudo 10y agoRight, yes, I read "the future of Scala" but that isn't what it said at all. My mistake entirely, you're absolutely correct. On the other hand, I stand by my "not working on Scala" comment. This is based on commit history, which I admit might not give the whole picture but is certainly a fairly strong indication: https://github.com/scala/scala/graphs/contributors https://github.com/scala/scala/graphs/contributors Odersky's activity has drastically diminished towards the end of 2012, with his last Scala commit in July, 2014. I've no issue with him doing exactly what he wishes, he owes the community (or at least, me) absolutely nothing and if he's more excited to work on Dotty than on Scala, then there is no doubt that's what he should be doing. My concern is that the more I look at Dotty, the more it looks like a very promising language that looks a lot like Scala, but that adds and removes some features to it - that is to say, not actually Scala. I've no trouble imagining a future where the differences grow enough that they stay / become entirely distinct, and seeing a large chunk of the brains behind Scala busy on Dotty doesn't feel me with confidence in the former's future.
- edko 10y agoI really do not see the problem with this. Odersky oversees a team of very capable people he trusts to work on the current Scala version, while he works on the future. He is the father of Scala, but please do not underestimate the brilliant people that are actively working on Scala now, allowing him to develop the bleeding edge.
- nrinaudo 10y agoYou're misreading my comment. What bothers me is not that the "father of Scala" is working on the future of Scala, but that he's working on something that I fear might become another language altogether. I'm not saying Scala is in bad hands or a dead language. But when a project's creator looses interest and moves to different things, well, it's usually not the best sign for that project. And again, I'm not saying that this is happening right now, or even that it necessarily will, just that Dotty definitely has the potential of leading to that situation.
- darkdimius 10y agoHi. I'm one of main developers of Dotty. I've gave answers to similar concerns here: https://www.reddit.com/r/programming/comments/44um2l/fear_uncertainty_and_doubt_in_scala_land/cztb6zx https://www.reddit.com/r/programming/comments/44um2l/fear_un...
- nrinaudo 10y agoThanks. I'll give this a thorough read - I think it deserves more than the cursory read I can afford to give it right now - and appreciate the time investment this no doubt represents.
- virtualwhys 10y ago> Dotty is not in conflict with Scala, like Valhalla is not in conflict with Java. from the linked thread that takes about 1/100 of the time to read as you've written casting doubt on the Scala to Dotty transition ;-)
- nrinaudo 10y agoWell, two answers to that. The first is that the linked post answers a lot of points, but not the ones I made. It makes Dotty sounds really exciting, which it is. It makes it sound as if everybody working on Dotty believes it to be the future of Scala, and I believe that to be true, too. What it does not do (that I could see) is give reassurance that Dotty and Scala will not drift appart and become two similar but incompatible languages. I felt it'd be rude to point this out, since there really is no way to provide such guarantees (just like there really is no way for me to back up my worries with anything concrete). The second part is, I'm not casting doubts, but expressing worries. I'm not saying it will happen, I fear it might. I'm sorry if this offends - I really am, my goal is not to insult anyone or demean anyone's work. I have no hidden agenda, and I'm not trying to be one of these anti-Scala trolls that sometime crop up. I love Scala. Look at my github profile, most of my public work is in Scala, and some of my libraries represent a lot of work (which obviously does not mean they're actually any good). I really, really hope everything works out the way people mean it to - as I said, Dotty sounds really exciting. I've seen too many "let's rewrite this from scratch and then make it backward compatible, it'll be amazing" projects to be able to believe it blindly, though.
- bad_user 10y agoWhy do you find it ominous? Scala 2.12, the next version that's currently at milestone 4, is going to be a huge release, having a new backend, optimizations, Java 8 interop, improvements for the type system, refactorings, basically the real deal. But Scala needs to be production quality and stable enough for real work TM. Like when they were pushing experiments in Scala, people were complaining that Scala breaks too often. Apparently now people are afraid that the experiments have moved to Dotty. You can't please everybody.
- nrinaudo 10y agoMy fear is that the feature sets diverge enough that we get two very similar but distinct languages and a split community. I'm not afraid that the experiments have moved to Dotty. That's an ideal scenario, if successful ones are indeed ported to Scala. I'm just not convinced they will be.
- premium-concern 10y agoThe plan is to get the feature sets closer together, not to diverge.
- nrinaudo 10y agoAbsolutely. I'm saying I fear reality and theory might diverge and we find ourselves with a split language / community. I highly doubt anybody set out to write Python 3 thinking "it'll mess with the community for years to come, muhahaha".
- premium-concern 10y agoScala devs have the tools to make sure it doesn't happen, Python didn't.
- adriaanm 10y agoWithout getting too philosophical, I don't see what's so ominous about the present not being the future or vice versa. All we have is the present, really. It's easy to verify for yourself who's working on Scala right now: https://github.com/scala/scala/graphs/contributors https://github.com/scala/scala/graphs/contributors (work on Dotty started around 2012, when I moved from EPFL to Typesafe). Myself, retronym & lrytz are on the Scala team at Lightbend. I'm proud of what we've accomplished with 2.10, 2.11 (8 minor releases!) and 2.12 (RC1 coming soon -- see my comment above), and excited about what the future holds for Scala! We work together closely with Martin's Dotty team, exchanging ideas about compiler performance and convergence of language features in Scala 2 and Dotty (the incubator for the future of Scala).
- nrinaudo 10y agoIf you feel my comments were dismissive of your work, or your team's work, then I owe you an apology. You're right to be proud of what you've done, it's quite a list of achievements and I can only hope I ever produce work of that quality.
- adriaanm 10y agoThanks, I appreciate it! Also, thank you for sharing your feedback & concerns. I acknowledge we need to communicate more.