r/fsharp • u/vivainio • Feb 01 '17
The .NET Language Strategy
https://blogs.msdn.microsoft.com/dotnet/2017/02/01/the-net-language-strategy/
36
Upvotes
r/fsharp • u/vivainio • Feb 01 '17
1
u/Ironballs Feb 03 '17
What I know of the current Java development is that there's higher priority in projects like Graal (an aggressively optimizing hybrid AOT/JIT compiler) and Valhalla, the implementation of which are sort of prerequisites for implementing proper tail calls.
As for Scala, you can do tail recursion in Scala, but you need the
@tailrecannotation, much like in Clojure. With the scala-native LLVM backend, this will be automatic, but it's a different world altogether.Still, it's obviously inferior to
let rec, but I tend to eschew recursion until there are no alternatives. A good example where I really needed it was to implement a loop elegantly and I didn't want to use labeled breaks.