Strange Loops

No Matter Where You Go, There You Are

Java + Smalltalk = Bistro

| Comments

Bistro is a smalltalk dialect that runs on a JVM. Overall, it’s not too bad if you need a smalltalk like environment to work in. Alternatives are Squeak, GNU Smalltalk or Cincom Smalltalk. All are available free of charge except Cincom Smalltalk (free only for personal use). I would have liked to use GNU Smalltalk but I could not get it to compile on my Mac. If I really wanted too, I could probably get it compiled but I didn’t feel like it.

There are some issues I have with Bistro but other than that it’s not too bad.
It does have the advantage of letting me use the extensive set of Java libraries out there. The biggest issue is that Bistro doesn’t compile code straight to bytecode, it transforms the bistro source code to java source code. It’s kind of like how the early C++ compilers where implemented by transforming the source text into C first.

There are also some quirks with integrating a strongly typed language like Java with a weakly typed language like Smalltalk. Frustration with writing aSwing GUI was exacerbated by various compilation errors caused by incompatible types. Further aggravation was caused by having to read the java source code text output from the bistro compiler to figure out what was wrong (I had to think doubly indirectly).