How fast is Bistro on the Java VM?
See the performance benchmarks. Bistro supports optional type annotations and both typed and untyped method resolution. Messages sent to untyped objects use dynamic method resolution at runtime. For untyped message receivers, the Java reflection facility is used to resolve the implementation of a method based on the class of the receiver. The dynamic dispatch facility caches the result of the method resolution so that future invocations are faster. Methods invoked through the dynamic dispatch facility execute about 20-40 times slower than primitive Java methods. However, continuing advances in Java VM design and computer hardware make this performance difference insignificant. Also, Bistro provides additional mechanisms for improving performance, including compiler optimizations of some control structures, type annotations, primitive Java methods, and access through the Java Native Interface (JNI) to native methods. Unlike Smalltalk, Bistro supports the ability to define the type of a