3 ms·
Pharo and Squeak use the CogVM , its a VM that supports JIT compilation and as such is very fast. Its not as fast as Java because afterall Java is static typed.
by kilon 13y ago
Pharo and Squeak use the CogVM , its a VM that supports JIT compilation and as such is very fast. Its not as fast as Java because afterall Java is static typed. However there is a way to get even faster than JAVA code.
Pharo comes with a library named "Nativeboost". Nativeboost is essentially an inline assembler. But unlike C/C++'s inline assembler of using assembly syntax, the inline assembler of Nativeboost uses Pharo syntax as each assembly command is a Pharo object like everything inside Pharo. Also because VM will stop all execution when it executes assembly code, you can enjoy raw machine code speed. Thus you can have Pharo code that can outperform Java code. If Assembly is not your thing , Nativeboost can be used also as a FFI to call C dynamic libraries. Currently C++ is not support because of name mangling but its possible to compile a C++ library as C library to be used by Pharo. Also Nativeboost's FFI offers support for Objective C as well.
There are also two projects to run smalltalk on Java, one is called redline smalltalk, the other's name eludes me now. There is also another project to bring Smalltalk to Java including even the Smalltalk IDE called "RTalk". But that project seems to be vaporware for now.