Some Interesting Thoughts on for desugaring
It’s unusual to link to a comment, but I’ll make an exception in this case.
There’s an old, old issue that Haoyi opened in the Dotty repo years ago, complaining that the way for
gets desugared is, shall we say, less than entirely intuitive.
There’s been a good deal of discussion there over time, but it’s been mostly dormant. Today, though, Daniel posted a really lovely bit of analysis of the problem, and a few suggestions for how we might make it better without completely breaking the world.
So this isn’t a “look, Dotty has solved the problem!” pointer. But for those who care about the language and how we might improve it, I’d recommend giving it a read, and maybe join in if you have thoughts. We’ve all been staring at this problem for so many years, and the more it can be made better in Scala 3, the happier we’re all likely to be…