[Update] We've just updated a few links because somebody had messed the whole thing up a little ;-) So if you wondered what some linked documents have to do with what this text said they would, please try again now.[/Update]
We're continuing our journey to areas where only few people would think they'll find Smalltalk. This time we talk to Jecel Assumpcao Jr. about the SiliconSqueak project, an attempt to build Computers to natively run Smalltalk bytecodes.
Jecel starts by taking us back to the early 70'ies when Xerox Parc had machines that were optimized to run Smalltalk, through the eighties when people found out you can also run bytcodes really fast (whatever that may have meant on hardware of that day) on standard architectures, right into the near future where the SiliconSqueak project will offer a fully functional computer that can run Squeak Smalltalk, and thus Scratch and Etoys natively.
We're talking about why you'd want to run Smalltalk on bare metal, the different techniques for accelerating Smalltalk code in Hardware, the implications of multi-core and multi-processor architectures on Smalltalk and programming in general. We also cover some Smalltalk history and so make the whole thing once again an interesting and inspiring discussion.
If you want to learn more about the things we've covered, here's a list of links for you:
- The SiliconSqueak project web site reflects the state of the project back in 2009:
The processor described there has the 32 bit "microcode". This evolved later to a version with 16 bit microcode plus an "ALU Array" for high performance numerical code which is what is described in the slides for my more recent presentations. The slides don't make much sense without explanations since they are rather abstract, but here is what Jecel presented for his PhD "qualification exam" in March.
- We didn't go very deeply into adaptive compilation, partial evaluation and stuff like that (the slides about Self 2.0 and 3.0 would make more sense with a little text explaining what the colors mean) but a lot of what we talked about is there. I also gave a talk about the instruction set details, but it was only 10 minutes long so lots of stuff is missing
- A visual history of Jecel's work on children's computers and an overview of other Smalltalk-related computer projects
- Good introductory material about FPGAs
- Jecel also was interviewed on James Robertson's old podcast called Industry Misinterpretations, you can find a download link for that episode here.
- Ian Piumarta has written two papers about defining the semantics of object oriented languages in terms of operations on associative
memories, as I mentioned during our talk. These are available here:
Download MP3 (34,5 MB)