A&B Computing


Logo Rom Cartridge
By Acornsoft
Acorn Electron

 
Published in A&B Computing 2.03

Acornsoft claims to have produced the definitive version. What's it like to learn with Logo?

Logo at last! The BBC has its share of "subsets", restricted to user memory usually, and ironically written entirely in BASIC! Now both the Electron and BBC Micro have a true Logo language, courtesy of the efforts of Acornsoft and their collaborators RCP Ltd. Numbered amongst the supervisors of Acornsoft Logo development are Richard Noss (Editor of the British Logo Users Group magazine), Mike Thorne (University College, Cardiff), Professor Celia Hughes (London University, Institute of Education), Dr. John Laski and the MEP.

Turtles Are Here!

You now have access to the second most "known" computer language, the brainchild of Papert, subject to investigation by BBC2's "Horizon" programme and second only because BASIC had forced its way into people's homes under the bonnet of many a popular micro.

The first thing that strikes you about Logo is its visual appearance. On entry, only the bottom six lines of the Mode 4 (default on entry to Logo) swcreen are initially available for text. The rest is a framed window (graphics area) with the turtle shape resting in the centre pointing up, the home position.

The first commands (primitives) you learn are the easiest, the ones that move the turtle around. Seeing the results of your own input instantly performed by the turtle is a tremendous incentive to find out more. Barry Morrell's excellent Introduction and User Guide (in practice if not in name) soon start to take on the ragged appearance of a favourite thriller.

It's impossible to go through all the primitives of Acornsoft Logo or to descibe in brief the entire scope of what Logo achieves as a language. We have not listed the primitives for you but what follows is a personal account of getting to know Logo. This will continue on a regular basis in "Making the Most of Logo", a series we hope will run and run in the pages of A&B Computing.

The world of Acornsoft Logo can be easily manipulated by various commands for choosing Mode, choosing foreground (SETPC - set pen colour) and background colours, changing the palette (PAL - equivalent of VDU 19), choosing graphics effects (SETNIB), manipulating screen size and shape and the turtle itself.

As well as controlling the turtle there are a multitude of commands for checking up on where it is, how far away it is, its coordinates, whether the pen is up or down and what its current shape is. You can also monitor its environment, the screen Mode it is in and what colour it is standing on.

The turtle can operate within the screen boundary (FENCE), can wrap around to the other side of the screen when going off one edge (WRAP) or can just keep on going within the territory of the WINDOW. This allows the turtle the run of about 20 times the size of the screen, or 10,000 steps from the home position before it wraps around to the other side.

Primitives Not Basics

Primitives are the words typed into Logo by the user to make things happen. The first thing you do with the turtle is to move it around, FORWARD (FD), BACK (BK), to turn it through an angle RIGHT (RT) or LEFT (LT). Primitives can have an immediate effect or they can be incorporated into named procedures which effectively become new Logo primitives or words. The procedure is begun by typing in TO followed by the name. For instance TO SQUARE.

At this point the cursor changes to > to indicate that you are defining a procedure. You END this sequence. Logo remembers your procedure and there is a very easy to use bunch of primitives to edit with. You can edit procedures and names individually or as a whole.

New Editions

Logo has a complete edit screen for these actions. It's much easier to use than the cursor keys and COPY combination needed with BASIC. It's a bit like using a word-processor. The cursor keys move you around the lines of the text to be edited.

Combinations of CTRL (BBC) and FUNC (Electron) and cursor keys, N (insert line), D (delete character at current point), L (delete to end of line), U (delete line), provide all the functions for editing, COPY tells Logo to remember the new code, ESCAPE tells it to forget the amendments and return to the original.

Other useful primitives report on and erase definitions of procedures and contents of variables. You can find out available and used workspace, load and save all or some procedures and variables, save and load pictures, catalogue and manipulate files. These primitives have wonderfully apt and obvious names and abbreviations like ERASE, READPICT and WS (WorkSpace). Even if you have mislaid the manual it is usually possible to work out what a Logo primitive does from the name.

TIDY is a particularly interesting primitive which clears out early versions of variables and procedures which Logo no longer needs to consider. Using TIDY improves the speed at which Logo can then perform.

Procedures names can also be changed and tested (COPYDEF, DEFINEDQ). Variable names can be checked (THINGQ), contents checked (THING) and variables made local (LOCAL).

Best Of Both

One of the most impressive features of Acornsoft Logo is the easy way in which it interacts with the familiar BBC Micro and Electron facilities. It hooks into the Operating System for sound, graphics, keyboard scanning, control of floor turtles and buggies, printing screens, sensing joystick control and so on.

The built-in printer dump routine is an important facility for reproducing turtle graphics for use away from the computer. It dumps both graphics and text areas. SOUND and ENVELOPE work as in BASIC except with the familiar commas giving way to Logo's own conventional spaces.

VDU commands are also available direct from Logo and VDU23 is especially important for defining the turtle's shape. TIME (which works in tenths of a second), TIMERSET and WAIT are useful features for controlling program flow.

The programmer also has access to simple debugging and error trapping primitives. I don't think we will find too many independent companies developing program aids for Logo! CATCH runs a list of instructions if an error occurs (equivalent of ON ERROR). PAUSE and CONTINUE go together to make checking variables and so on easy. TC displays name of procedures called and there are sophisticated TRACE facilities, including single stepping through the program.

On the maths side especially useful primitives are SETDECS, which controls the number of decimal places being used, QUOTIENT and REMAINDER (DIV and MOD), SUM, SQRT and PRODUCE, which is a greedy version of *. INT returns the integer part of the number, ROUND rounds it to its nearest integer.

When it comes to words rather than numbers, Logo is very much more powerful than BASIC and therefore much more suited to the beginner (or even the human in general!). ADDITEM, ERITEM and ITEM insert, delete and return value of elements in a list of word. BUTFIRST, BUTLAST, FIRST, LAST all return specific elements of objects. CHAR, COUNT, CAPS, ASCII, LISTQ and EMPTYQ are also useful and a simple wordprocessor could be amongst the first Logo projects you might try.

Here's a quick look at how these primitives work with a word:

PRINT LAST "A&B COMPUTING G

Dave CarlosAnn Owen

Other Acorn Electron Game Reviews By Dave Carlos


  • Number Painter Front Cover
    Number Painter
  • Time Trucker Front Cover
    Time Trucker
  • Osprey Front Cover
    Osprey
  • Revise GCE/CSE... Mathematics 1 Front Cover
    Revise GCE/CSE... Mathematics 1
  • Know Your Own Psi-Q Front Cover
    Know Your Own Psi-Q
  • BBC Mastermind Front Cover
    BBC Mastermind
  • Map Rally Front Cover
    Map Rally
  • Football Manager Front Cover
    Football Manager
  • The Dating Game Front Cover
    The Dating Game
  • Art Designer Front Cover
    Art Designer