
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 robots.net. Read on for Martin's review of
Squeak: Learn Programming with Robots.
Review by Martin Meier
Help support robots.net by purchasing
this book from Amazon.com
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.]
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.