Squeak: Learn Programming with Robots

Posted 3 Oct 2005 at 21:36 UTC by steve Share This

The Squeak programming language is a popular variant of Smalltalk based on the original Smalltalk-80. Apress has published a book by St├ęphane Ducasse, a professor at the University of Savoie. The book combines Squeak with Robotics to teach basic programming concepts. Martin Meier of the Dallas Personal Robotics Group read and reviewed the book for Read on for Martin's review of Squeak: Learn Programming with Robots.

Review by Martin Meier

Help support by purchasing this book from

Title: Squeak: Learn Programming with Robots

Author: St├ęphane Ducasse

ISBN number: 1590594916

Publisher: Apress

List of Chapters:
Part 1 Getting started

Chapter 1 Installation and Creating a Robot
Chapter 2 A First Script and It's Implications
Chapter 3 Of Robots and Men
Chapter 4 Directions and Angles
Chapter 5 Pica's Environment
Chapter 6 Fun with Robots
Part 2 Elementary Programming Concepts
Chapter 7 Looping
Chapter 8 Variables
Chapter 9 Digging Deeper into Variables
Chapter 10 Loops and Variables
Chapter 11 Composing Messages
Part 3 Brining Abstraction into Play
Chapter 12 Methods: Names Message Sequence
Chapter 13 Combining Methods
Chapter 14 Parameters and Arguments
Chapter 15 Errors and Debugging
Chapter 16 Decomposing to Recompose
Chapter 17 Strings, and tools for understanding them
Part 4 Conditionals
Chapter 18 Conditions
Chapter 19 Conditional loops
Chapter 20 Boolean and Boolean Expressions
Chapter 21 Coordinates, Points, and Absolute Moves
Chapter 22 Advanced Robot Behavior
Chapter 23 Simulating Animal Behavior
Part 5 Other Squeak Worlds
Chapter 24 A Tour of eToy
Chapter 25 A Tour of Alice

Think of Squeak as an electronic workshop, rather than a programming language. With the parts and tools available, you will quickly begin playing with a virtual robot. The robot used in the guide is a simple (but versatile) line-drawing bot. Were it a real machine, it would scurry about the floor, leaving a line behind it as an indicator of where it has been. On your computer, it will draw patterns on the screen. You can tell it what directions to move in, what type of line it should draw it, and redefine how it looks.

If this approach sounds somewhat simplistic, it's meant to. This book's purpose is to cover basic programming concepts, and using the virtual robot is an excellent way to do just that. As the reader learns basics like loops and variables, they will be able to program the virtual bot with more complex and interesting movements. The concepts covered in each chapter are re-enforced by exercises that expand on the ideas the book just covered.

I was particularly impressed by the ease of use and availability of the squeak software (I tried it out on a Macintosh). While it helps to have a good understanding of simple geometry, it isn't essential.

[Editors Note: A downside to Squeak is that was released under a problematic license that is incompatible with the GNU GPL and the modern concepts of Free Software and Open Source. If you plan on using it to learn Smalltalk or in other educational settings, this is probably nothing to worry about. If you're interested in using Smalltalk for something more serious and licensing issues are important, you may wish to check out GNU Smalltalk.]

Turtle Graphics, posted 3 Oct 2005 at 23:23 UTC by The Swirling Brain » (Master)

I vaugly remember a programming language called turtle graphics where you had a turtle on screen and you told it where to roam to draw a line picture similar to what is described in the review. Anyone remember that language? I wonder if "squeek" is what you get when a robot steps on the turtle. :-)

Logo, posted 3 Oct 2005 at 23:39 UTC by steve » (Master)

You're probably remembering Logo. It was used to teach programming in a way very similar to the Squeak book. Logo was created by Seymour Papert, one of the guys who started the MIT AI lab. Turtle Graphics was a dialect of Logo designed for children. Is was based on Turtle Geometery which consisted of a point (the turtle) and a heading. Simple collections of commands could produce some pretty cool looking stuff.

Terrapin Robot, posted 4 Oct 2005 at 13:33 UTC by jeffkoenig » (Master)

I recall a turtle robot, I think called "Terrapin", that could be programmed using Logo.

Instead of having the Turtle graphics on the CRT, the Terrapin would trace them out on your floor.

I'm sure I still have an old issue of Robot Age with one of their ads.

Scribbler, posted 4 Oct 2005 at 15:20 UTC by steve » (Master)

We recently received one of the new BASIC stamp based Scribbler robots. I brought it up to the DPRG RBNO last tuesday and we took it out of the box and looked it. We should have a review posted in near future. It's a little blue plastic differential drive robot that you drop a sharpie marker into and it work very much like a turtle except, of course, you have to program it in BASIC instead of Logo or SmallTalk. Teaching little kids BASIC - what would Dijkstra say... ;-)

See more of the latest robot news!

Recent blogs

30 Sep 2017 evilrobots (Observer)
10 Jun 2017 wedesoft (Master)
9 Jun 2017 mwaibel (Master)
25 May 2017 AI4U (Observer)
25 Feb 2017 steve (Master)
16 Aug 2016 Flanneltron (Journeyer)
27 Jun 2016 Petar.Kormushev (Master)
2 May 2016 motters (Master)
10 Sep 2015 svo (Master)
14 Nov 2014 Sergey Popov (Apprentice)
Share this page