The other day, while visiting the new Editions de l’Océan Indien bookstore (appropriately called The Bookstore) in Rose-Hill, I discovered its basement containing lots of old books at very cheap prices.
I bought 5-6 books at Rs. 10 each among which Logo for Beginners by J.W. Penfold.
As you can guess by the name of the book, it talks of the Logo programming language, developed by Seymour Papert to teach programming to students.
To be frank, I did not have a very positive opinion of Logo prior to reading that book. It’s only when I came across page 3 that I realized that Logo was something special:
“LOGO derives from a family of languages known as ‘list processing’ languages, and these are the languages of so-called artificial intelligence”
What??? LOGO is a derivative of LISP!?! I couldn’t believe it. As you have gathered by now, I am very very fond of LISP and its children: Scheme, Haskell, Erlang and Ruby.
Programming in Logo
Logo, when used to teach programming, is very straightforward. For instance, this is the body of a procedure, called square, which draws a square:
repeat 4 [forward 100 right 90]
The following code then draws the figure that you can see above:
repeat 72 [square right 5]
It’s not complicated and, arguably, can really teach the basic concepts of computation very easily. No wonder lots of schools (especially in the UK) still use Logo.
Of course, Logo being a LISP derivative, can be used to solve very complex problems. It has higher-order functions for instance and this opens the world of map and reduce (and even Google).
Where to get Logo?
There are many free implementations of Logo. The “standard” seems to be UCBLogo also known as Berkeley Logo which works on lots of different platforms (Linux and Windows for example). I did not use that one.
Instead I found ACSLogo which is a fantastic Logo implementation for Mac OS X. It’s so good that it even won a Mac OS X Innovators Contest award in 2003!
Final thoughts
Try Logo. I think you’ll be impressed. And, in case you come across that Rs. 10 book, buy it. Rs. 10 is so little to pay to access such a wonderful world…