Carl and Richard talk to Don Syme, the inventor of F#, along with F# PM Luke Hoban and MS Researcher Ralf Herbrich about the future of the F# language.
how is the mono VM better than the JVM? in particular, the JVM is at least 2x faster for most benchmarks.
Scala is also very close in speed to Java, due to the heavy use of type inference.
Tail calls are essential in this context (functional programming). Like .NET, Mono fully supports tail calls. The JVM does not support tail calls. Moreover, there are workarounds for the JVM but they are all so ugly, invasive and inefficient that languages like Scala don't implement them.
scala has tail-end optimisation but only if the recursion is back to the same function. so, for instance, it wouldn't optimise for mutually recursive functions. agreed, it's not ideal, but it's not a showstopper for scala which is a mixed paradigm language.
Honestly don't like F# because it runs on .NET? Scala is cool and everything but it seems like functional programming with object oriented training wheels.
Comments
Jacek replied ago:
When it runs on the JVM, call me. In the meantime check out Scala.
cbang replied ago:
When the JVM is fixed, call me. In the meantime check out Mono.
andrewm replied ago:
how is the mono VM better than the JVM? in particular, the JVM is at least 2x faster for most benchmarks.
Scala is also very close in speed to Java, due to the heavy use of type inference.
jdh30 replied ago:
Tail calls are essential in this context (functional programming). Like .NET, Mono fully supports tail calls. The JVM does not support tail calls. Moreover, there are workarounds for the JVM but they are all so ugly, invasive and inefficient that languages like Scala don't implement them.
andrewm replied ago:
scala has tail-end optimisation but only if the recursion is back to the same function. so, for instance, it wouldn't optimise for mutually recursive functions. agreed, it's not ideal, but it's not a showstopper for scala which is a mixed paradigm language.
dengar007 replied ago:
Honestly don't like F# because it runs on .NET? Scala is cool and everything but it seems like functional programming with object oriented training wheels.
Voters For This Link (8)
Voters Against This Link (5)