Help with morph and world refresh

Jon Hylands jon at
Sat Apr 5 18:31:05 UTC 2003

On Sat, 5 Apr 2003 19:57:42 +0200, Stephane Ducasse <ducasse at>

> This is what I'm trying to do now because I always fall in the trap that
> I end up with concurrent objects executed in various implicit thread. I 
> got the same problem with the animation for the turtle. The problem is 
> that I want plain normal code to be able to be executed and not just a 
> subset of well identified methods.
> Nathanael wrote several version of the AnimatedTurtle just because we 
> had problem with the user interaction event and condition breaking the 
> animation.

Its very easy to do single-threaded animation of reasonable numbers of
objects using finite state machines to control them. FSMs are much simpler
to debug and understand than multi-threaded code, but the FSM execution
loop essentially gives you a scheduler for controlling multiple objects in
diverse ways.

The main control loop for my autonomous submarine MicroSeeker is a set of
layered finite state machines. I also control my mini-sumo robots with a
finite state machine written in C.


   Jon Hylands      Jon at

  Project: Micro Seeker (Micro Autonomous Underwater Vehicle)

More information about the Squeak-dev mailing list