Here is another possibility.
This company has been around for over twenty years. Its product has always been the fastest music synthesis system in the world that gives you total control over your sound. And by "total", I mean it gives you the ability to mathematically specify each sound wave. If you want, which is actually too much detail for most people. And it is all written in Smalltalk. Not Squeak, of course, since Squeak wasn't around then. But it could have been done in Squeak. And perhaps they ported it to Squeak. I haven't talked to them for a long time so I don't know what they did, but from the screen shots I think it is still a very old version of VisualWorks.
Anyway, how do they make it so fast? How can they make something that can be used for hours without any GC pauses?
The trick is that the sound is produced on an attached DSP. The GUI is in Smalltalk on a PC, and it generates code for the DSP. It is non-trivial making the compiler so fast that when you press "play", it can immediately start up the DSP and start producing sound. It does this (rather, it did this, since they might have changed the way it works) by just producing enough code to run the DSP for a few seconds and then starting the DSP while it generates the rest of the code. Kyma literally is writing the program into DSP memory at the same time as the DSP is running the program, producing sound.
Anyway, maybe that is the right approach to programming robots. You don't even need to use two computers. Imagine you had two computers, one running Squeak and the other a simple, real-time machine designed for controlling robots, but not very sophisticated. Squeak programs the simple computer, and can change its program dynamically. The simple computer has no gc. Since Squeak is a VM on a computer, the real-time computer can be a VM, too. So, you could be running them both on your PC, or you could run them on two separate computers for better performance.
I would be happy to talk more about this. But I'd like to talk about the beginning of Kyma. The owners of Symbolic Sound are Carla Scaletti and Kurt Hebel. Carla has a PhD in music, and Kurt in Electrical Engineering. I met Carla after she had her PhD. She wanted to get a MS in computer science so she could prove her computer music expertise, and she ended up getting it with me. She took my course on OOP&D that used Smalltalk. For her class project (back in 1987, I think) she wrote a Smalltalk program that ran on the Mac and that produced about ten seconds of sound, but it took several minutes to do it. Hardly real time. However, she was used to using a supercomputer (a Cray?) to generate sounds that still weren't real time, so she was very pleased that she could do it on the Mac at all, and though Smalltalk was slower than Fortran, in her opinion the ease of use was so great that she didn't mind the speed difference. As she put it, the speed difference between a Mac and a Cray was bigger than between Smalltalk and Fortran. She ended up turning this into the first version of Kyma and that became the subject of her MS thesis. I can remember when she showed it in class. She was the only woman in the class, and the other students knew she was a musician, i.e. not *really* a programmer. She was quiet during class, so they had not had a chance to have their prejudices remedied. Her demo at the end of the semester blew them away.
Kurt had built a DSP that their lab used. (The lab was part of the Plato project, I believe, one of the huge number of creative results of this very significant project at Illinois.) It was called the Capybara. This was before the time when you could just buy a good DSP on a chip, but that time came very soon and then they used the commercial chips. For her MS, she converted her system to use the Capybara, and this was when she figured out how to make it start making music within a fraction of a second of pressing the "play" button. Kurt also used Smalltalk with the Capybara. His PhD was about automatically designing digital filters, and his software also generated code for the Capybara, though it was actually quite different from Kyma.
The two of them worked on several different projects over the next few years, but kept improving Kyma. Along the way Kurt started building boards that had several commercial DSPs on them. Eventually they decided to go commercial and started Symbolic Sound.
-Ralph Johnson