Meanwhile the nasty statically type checked languages lowered the pain level with non-nullable and type inference for local vars.
For highly parallel general-purpose computations? Tell us more!
https://chapel-lang.org/docs/technotes/gpu.html
As-already stated in this discussion RoarVM "hasn't been touched in over 10 years". This discussion is about the Pharo 12 release and supposedly RoarVM is "compatible with Squeak 4.1 and Pharo 1.2 ".
For example: "Optimizing Machine Learning Performance at Netsuite with GraalVM and NVIDIA GPUs"
https://medium.com/graalvm/optimizing-machine-learning-perfo...
another problem that squeak had was that it was built on top of old images, containing objects that date back to the beginning of squeaks history, and possibly even older than that, and because of that it was (at least at the time) not possible to verify the ownership and license of all the source that the image was made of. for some objects the source was even lost altogether. this made squeak incompatible with FOSS licenses and it was a reason why it was not included in linux distributions. which is one factor that limited its spread among developers.
one of pharo's goals was to remove those old objects and unverified source and make it possible to build new images purely from a verifiable source.
from a certain perspective, the inclusion of those old objects creates a certain sense of awe, considering who were the people that worked on smalltalk that created these objects, whereas pharo in that respect feels more sterile.
Let's not get stuck in a local minima on how to do programming. There could be better ways not yet popular enough. Smalltalk came out of an environment of innovations that were ahead of their time.
EDIT: while doing the Pharo mooc, I was able to create a DSL for what I understand to be D&D dice representation without using special metaprogramming syntax of the language or parsing and tokenizing strings. Just plain old OOP of the Smalltalk/Pharo flavour. This were just basics btw