| > Data is immutable... But you don't need that at the VM level. Clojure does that on the JVM. Having that at the VM level makes a simple GC work reasonably well, but HotSpot has world-class GCs that perform better, even without the assumption of immutability. > Everything is defined in modules. Again, that's a language-level feature. > Processes are an abstraction You can get that on the JVM, too. > Finally, everything is abstracted to the notion of nodes with in a cluster. That's the runtime library's concern. Not the VM's. > When you start thinking in terms of how structure you code for BEAM, you inherently get easy access to scalability. All of that is great, but implementing those features at the language/library level and harnessing HotSpot's power would give you that same easy access to even greater scalability. |
Having worked with java, scala, jruby and closure, something always is clumsy, be it interfacing with java cruft, slow startup times of the vm, maven & co... While there are solutions to fix the solutions, its just annoying for me. I get what you say, but nevertheless are JVM (and .NET) based things nothing i'd use (except i'm forced to do so).