I did, yes I know that Smalltalk needed a VM, Pharo == smalltalk, and the like.
Wikipedia for Pharo says they have a VM with JIT, etc. I have never heard a peep about the Smalltalk VM in any circumstance as a performant target for any language. Ever.
If it's battle tested and great, why isn't it used for anything else than Smalltalk ports? Is there a python, ruby, javascript, java, etc port to the smalltalk VM?
If it sounds like I'm being dismissive, that's not the point. The point is the Smalltalk ecosystem, like Lisp derivatives, likes to have its own top-to-bottom stack completely isolated from "real" execution platforms.
For Lisp it's so bad that Clojure is rejected by some Lisp purists because it can JVM / JS compile.
IMO, for example, Ruby made a strategic error writing their own VM rather than just embracing the JVM as the main VM, although when Ruby was writing their VM invokedynamic hadn't been added to the JVM. Well, and they should have added some optional typing.
Wikipedia for Pharo says they have a VM with JIT, etc. I have never heard a peep about the Smalltalk VM in any circumstance as a performant target for any language. Ever.
If it's battle tested and great, why isn't it used for anything else than Smalltalk ports? Is there a python, ruby, javascript, java, etc port to the smalltalk VM?
If it sounds like I'm being dismissive, that's not the point. The point is the Smalltalk ecosystem, like Lisp derivatives, likes to have its own top-to-bottom stack completely isolated from "real" execution platforms.
For Lisp it's so bad that Clojure is rejected by some Lisp purists because it can JVM / JS compile.
IMO, for example, Ruby made a strategic error writing their own VM rather than just embracing the JVM as the main VM, although when Ruby was writing their VM invokedynamic hadn't been added to the JVM. Well, and they should have added some optional typing.