5 ms·
We are a big scala shop at Expedia and it's concerning that Martin is more interested in Dotty. Scala 2.12 is late, and not having easy java8 interoperability
by joneholland 10y ago
We are a big scala shop at Expedia and it's concerning that Martin is more interested in Dotty.
Scala 2.12 is late, and not having easy java8 interoperability is becoming more and more of an issue.
I love the language but it is becoming harder to recommend it for new things due to the ambiguous roadmap.
- hocuspocus 10y agoI fail to see how this is concerning. Scala isn't a one-man project. Martin is a university professor, i.e. someone supposed to work on education and academic research. It's already pretty remarkable that so many students and researchers at LAMP/EPFL (funded by Swiss taxpayers) are working on real-world projects, that you can use in production at your commercial company.
- oelang 10y agoOne small correction, they're funded by the Swiss taxpayers and the European union.
- vatican_banker 10y agoI fail to see why the "funded by Swiss taxpayers" is relevant. For instance, you are using the internet, funded by US taxpayers. So stop the Swiss circlejerk :)
- norswap 10y agoDotty is Scala. It's an experimental project with the aim to clean up stuff and be eventually mainlined. And I think a bit of simplification and formalization is exactly what Scala needs, in the long run.
- Clobbersmith 10y agoExpedia uses scala now? That's crazy. I worked there about 5 years ago and I'd never have thought of Expedia as the kind of company to play around with Scala. We were in the middle of a Java migration at the time.
- joneholland 10y agoExpedia has massively transformed in the past 3 years from lagging behind to becoming more and more cutting edge.
- ci5er 10y agoThat's rare. What happened? Why? (I don't mean to be terse, I just don't know how to ask that with more words...)
- dlandis 10y agoI've gotten the impression over the years that this compiler rewrite and simplification was a necessary step to ensure the long term success and viability of Scala. I think it's great that they've made so much progress with so little disruption to the Scala roadmap.
- HolyHaddock 10y agoInteresting! My team in HCOM is all Scala, but more generally here and in our upstreams it is still quite niche. Are you based in the UK? It would be interesting to compare notes. :)
- joneholland 10y agoEWE in Bellevue. Look me up in the GAL (My username is my name).
- pyrophane 10y agoThis doesn't concern me. If anything does, it is that Tyrpesafe, in becoming Lightbend, is not going to be as focused on the needs of the Scala community, despite reassurances to the contrary.
- premium-concern 10y agoThe they have added two additional people to the Scala team over the last few months. Everyone knows they suck at communicating, but I rather care about actions, and the actions I have seen are good.
- HypeInference 10y agoWhat about the Slick team? Also growing? Are you saying two new compiler engineers were hired by Lightbend? Because if they're working on Lagom that's a different (mostly Java) story https://github.com/lagom/lagom https://github.com/lagom/lagom
- adriaanm 10y agoWrong, there's more Scala than Java in Lagom's implementation, as is easily verified on the link you provided yourself. See my comment above on some more info on the Scala team.
- premium-concern 10y ago> What about the Slick team? Also growing? Different projects require different approaches. The introduction of the community process added 5 new maintainers and the merge of Slick and FreeSlick caused a lot of activity and contributions, so I'm pretty happy. > Are you saying two new compiler engineers were hired by Lightbend? Yes. > Because if they're working on Lagom that's a different (mostly Java) story https://github.com/lagom/lagom https://github.com/lagom/lagom No.
- dastbe 10y agoI agree with the other commenters that there are plenty of people working on Scala (and arguably odersky is a much better researcher than he is a maintainer) that I wouldn't worry about people maintaining/upgrading Scala. I do think 2.12 (and 2.11 before it) either had unrealistically optimistic deadlines or suffer from poor project management. 2.12 has slipped by well over a year at this point, which is sad for frameworks like Spark which are going to stick to 2.11 for their next MV cycle.
- HypeInference 10y agoScala 2.12 M4 still manages to leave experts perplexed, https://groups.google.com/forum/#!topic/scala-internals/lv4sTGorDLU https://groups.google.com/forum/#!topic/scala-internals/lv4s... The fact that the 2.11.x series had a number of "dead on arrival" minor releases also confirms: better not to hurry to adopt a new Scala release.
- adriaanm 10y agoHi, Scala Team Lead at Lightbend here! We are working hard on getting 2.12 out. Almost ready! While the theme for 2.12 is easily summarized (Java 8), I assure you the changes behind the scenes go all the way to the core. Compiling lambdas and traits to the best Java 8 bytecode we can think of, unifying type checking of Single Abstract Method types and Scala's built-in function types, as well as rewriting the whole optimizer and byte code emitter was no small feat! It's been very satisfying to rework these parts of the compiler, and I'm excited to see 2.12 going live soon! We're cutting the last milestone (M5) this week, with RC1 scheduled for the second half of July -- assuming M5 is well received. We're pretty confident, as we build over 1MLoC of OSS Scala every night using dbuild (see scala/community-builds on github). We at Lightbend care deeply about language stability and compiler robustness, as we believe they are key for driving Scala adoption by the community and the enterprise alike. Being PL researchers, we are also excited about simplifying and evolving Scala! This is why we're working on a smooth & steady migration path towards the ideas being incubated in Dotty. Scala's process is a dialogue, which means coordinating with Martin Odersky and his teams at EPFL and the Scala Center, as well as the whole Scala Community. Ultimately, we at Lightbend set the Scala 2.x roadmap based on this consensus (since 2.10), and take on OSS development and maintenance (as well as commercial support for our customers). With the founding of the Scala Center, we're happy to share governance, while remaining as committed to the day-to-day engineering and representation of the pragmatic robustness and careful evolution voice :-) This dialogue comes naturally to us, as half of our team are alumni from Martin's lab (Lukas & I have been working on the Scala compiler for almost 10 years, ranging from adding support for type constructor polymorphism in Scala 2.5, rewriting the pattern matcher in 2.10, implementing named & default arguments, while working on the theoretical foundation of an effect system for Scala as well as the core of Dotty), while the other half are long-time contributors to all aspects of Scala. Sure, releases sometimes slip a bit -- we are a small team (we're a small company -- our team size is no outlier), and while we get to spend the vast majority of our time working on OSS, we also have some commercial obligations inside the company (e.g., Scala support tickets are handled by us). The other reason is that we have worked on 2.11 for 6 months longer than we usually spend on a major release, because we wanted our Java 6 users to get as many of the 2.12 features as possible on their platform (2.12 requires Java 8), as well as providing a preview of the new ASM-based back-end and optimizer. The Scala team at Lightbend takes care of half of all PRs, with the other half being contributed by our awesome community (including EPFL, though they mostly focus on their research and Dotty, which is how things are supposed to be). We've worked hard on making it easier to contribute to Scala, and I'm very glad to see the rate of community contributions trending up! The Scala and Dotty teams talk regularly (we just had a Dotty & Scala summit before Scala Days), to exchange tips on compiler performance as well as to work towards convergence for Scala 2.x and Dotty. For example, the 2.12 trait and lambda encodings were tried first in Dotty, with our real world adoption of these ideas feeding back into the Dotty compiler. For 2.13, we're planning feature flags to implement the first wave of Dotty features and restrictions (and vice versa for Dotty emulating Scala 2), so that you can start migrating your code bases. For some more background, here are our roadmap updates: http://www.scala-lang.org/news/2016-schedule/ http://www.scala-lang.org/news/2016-schedule/, http://www.scala-lang.org/news/roadmap-next/ http://www.scala-lang.org/news/roadmap-next/, http://www.scala-lang.org/news/2.12-roadmap/ http://www.scala-lang.org/news/2.12-roadmap/.
- kodablah 10y agoWhy is Java 8 interop becoming an issue? Scala 2.12 does leverage the new bytecodes and some of the new stdlib, but in general Java 8 compat from https://github.com/scala/scala-java8-compat https://github.com/scala/scala-java8-compat is usually enough from the programmer's perspective. Also, if it's lib support (as opposed to lambda support), you suffer the same things you would if you were using guava functors or something before, sometimes compat layers have to be written. If it's bytecode support, I suppose I don't understand the biggest pain points from the perspective of the programmer. It's becoming easier for me to recommend it due to the slow moving roadmap. So are you going to tell people to stay away from the JVM for its ambiguous roadmap (openjdk projects being delayed, etc)?
- pbarnes_1 10y agoSo... fund 2.12 dev? :)