4 ms·
> but there are way more languages targeting the JVM than the CLR these days This is often repeated, but it turns out that the JVM and CLR have roughly the sam
by noblethrasher 9y ago
> but there are way more languages targeting the JVM than the CLR these days
This is often repeated, but it turns out that the JVM and CLR have roughly the same number of high profile languages:
Specifically, the CLR enjoys the following mature languages:
C#
F#
VB (which has some distinct advantages over C#)
C++/CLI
PowerShell
IronPython
Nemerle
It's also worth noting that Clojure absolutely works on the CLR, and F* (F# with a more powerful type system) just hit version 0.9.
C# (and VB), get a bit of love of HN, but they're even more powerful than they get credit for. C# has monad comprehensions, a metaobject protocol[1], and can straight-forwardly simulate type classes (in the form of implicit conversions to constructed classes). So, as a language, C# can get close to both Scala and Clojure even without having higher-kinded types, multimethods, or macros.
[1] https://books.google.com/books?id=QGciuyBRyU0C&pg=PA119&lpg=PA119&dq=DLR+metaobject+protocol&source=bl&ots=NdZ5DnfN38&sig=pW8mWlGSAiLltPsYxYRf9Egbtuw&hl=en&sa=X&ved=0ahUKEwjX3Iu0xr7XAhWB34MKHRyZC38Q6AEIKDAA#v=onepage&q=DLR%20metaobject%20protocol&f=false https://books.google.com/books?id=QGciuyBRyU0C&pg=PA119&lpg=...