Take the 2-minute tour ×

Prompted by this question about becoming a faster programmer, I'm curious to know if anyone has made a significant-sized 2D game in SmallTalk or Squeak.

And if so, how does it compare to C#? I'm using C# with FlatRedBall for my graphics/physics stuff, and I find it pretty easy to make whatever I want to make. Also, how is Squeak/SmallTalk as far as automated testing?

It's not clear from the Squeak site how the games work; are they download-and-play? I prefer in-browser (via a plugin, like Flash/Silverlight).

share|improve this question

4 Answers 4

up vote 1 down vote accepted

Squeak has a plugin. I'd be reluctant to use it for a game, although there is a ton of cool stuff done in Scratch (http://scratch.mit.edu/), which is built on Squeak.

SUnit is as good as NUnit or JUnit. Some recent work has been done with Hudson/Jenkins with Pharo and Squeak (check the mailing list archives if you're interested).

If you're happy with C# and your physics engine stick with that. Smalltalk is a bit of a niche and it can be frustrating if you're used to modern IDEs with code completion and whatnot. OTOH, it's pretty powerful when you consider that the entire environment is written in itself, and to make a change you can just tweak a method while everything is running, there's no need to "build".

Hope this helps. Steve

share|improve this answer
Looks like it runs on the JVM. Kind of interesting. –  ashes999 Apr 7 '11 at 12:30

Take a look at OpenCobalt http://www.opencobalt.org for what can be done with squeak. Cobalt is being ported to squeak 4.2 so that it can run on the Cog JIT VM which makes it MUCH faster than the older version running on squeak 3.8. There are things that can be done with Squeak + OpenGL that aren't being done with any other platform as far as I know because it is just too hard/slow to develop the code in a C/C++/C# based system.

E.g. 3D portals, graphical control of objects through said 3D portals, programmatic control of multiple virtual worlds using external scripting, etc. All those are of course doable with any programming system, but squeak + Cobalt and the Teatime architecture make them easy to implement over a weekend rather than spending months to reinvent teatime using a different language.

YMMV of course, depending on the specifics of what you want to accomplish.

share|improve this answer
Nice, but I'm a 2D guy; 3d games take an order of magnitude (10-100x) more time and energy and resources to make. –  ashes999 Apr 7 '11 at 12:28
Understood, but the point is that if it runs fast enough for an interactive multi-person networked 3D space, it runs fast enough for a 2D game. –  user6570 Apr 7 '11 at 19:33
My question is not "is it fast enough," but more like "are the technologies for it in existence and mature enough?" –  ashes999 Apr 7 '11 at 19:36

Look at http://www.planet-plopp.de or http://www.impara.de/projekt_pirates_engl.html

Impara used the portable Squeak Smalltalk to build these games.

share|improve this answer

There are also videos on how Dolphin Smalltalk (Win32 only) can be used to build games http://www.object-arts.com/support/videos_files/21163c4401ba2928d4e0c1ca319c04c7-1.html

share|improve this answer

Your Answer


