Adapting LOGO to meet your needs
Why bother to extend the language?Whenever
you learn about some new subject area - as opposed to learning
some isolated fact - you find that you acquire a new vocabulary to handle
the new concepts that are involved. You will sometimes hear people say: 'I could
cope with subject X if it weren't for the awful terminology.' They are probably
mistaken. It may well be
that you can talk about anything using only the 850 words of Basic English but
the fact of the matter is that new vocabulary makes life very much easier rather
than more difficult. New vocabulary provides you with a quick way to refer
to new notions which you would otherwise need to talk about in a very roundabout
fashion. It is much easier to shout 'Snap!' when playing cards than to struggle
with 'I say! My card is the same as the one on the top of the pile!' It is
much the same with talking to
a computer. It is easier to get it to do what you want if you can first teach
it a language adapted to the task.
New names and new tricksIn a very obvious sense we have already
begun to find ways of extending the LOGO language. As soon as we start to set
up new variables we enrich the vocabulary we dispose of for referring
to objects. But any programming language worth its salt provides for variables.
LET VAT = 17.5 is BASIC's equivalent of LOGO's make "vat 17.5.
To call a language 'extensible' normally implies that, in addition to the creation of variables,
it allows for the definition of new procedures which, once defined, function
just like any primitive of the system. LOGO - unlike BASIC - is an extensible
language in this respect too. Click the the next page button see how procedure definitions are made.
Department of Linguistic Science
The University of Reading