Where to place LOGO in teacher training

Márta Turcsányi-Szabó
Eötvös Loránd University, Faculty of Natural Sciences
Department of General Computer Science
HUNGARY
E-mail:TURCSANYINE@LUDENS.ELTE.HU

Abstract: This paper hopes to illustrate a possible way teachers of informatics could view a programming language like LOGO to be used in the education of curriculum subjects. The topic concentrates on language education.

 

Introduction

The Eötvös Loránd University has been training teachers in Informatics since many years. Personal computers have been introduced since 1981. Students graduating from our university would mainly teach at secondary school level, and due to the reorganisation of many schools, at elementary level too. Until recently schools have had an 8+4 years division for elementary and secondary levels, nowadays you can find 4+8, 6+6, or even a combined 12 setting too. This means that our teachers should be able to place themselves in this overall role of school education.

The courses offered to students are constantly developed and renewed to form an up to date professional image for teachers to fulfil their role in different educational institutions. The program is designed to be completed in 5 years and graduates are given a M.S. degree in Computer Science.

The University also provides a post graduate program, and training for in-service elementary or secondary school teachers of all levels possessing B.S. degrees, to major in informatics. The program completes in two years and graduates are also given M.S. degree in Computer Science.

Both programs provide a large scale of knowledge in informatics with a close relation to education.

- They are trained in several operating systems, different networks and environments, get acquainted with different types of computers and software to be able to design and install a computer network.

- They are introduced to several aspects of computer science, systems of informatics, numerical analysis, artificial intelligence. The idea of constant development is injected into them to be sensitive to changes and needs.

- They are introduced to a variety of application software like word processors, spreadsheet, database management, simulation programs, strategic games, and other educational software. Thus they can compare several similar tools and try to figure out their place in education.

- They are introduced to programming methodology, data structures and algorithms through a smoothed training program [1] [2]. Thus they are encouraged to design educational software.

- They acquire a number of programming languages like ELAN, PASCAL, FORTH, PROLOG, LOGO, and a few others on non-compulsory basis both as a programming tool and an educational tool as well. They learn the main features of each language and taste the possibility of applying them in education.

- Students can choose several other subjects besides informatics as their majors, eg. mathematics, physics,...etc. Thus they are able to look out onto other fields and try to apply what they learned in improving the motivation for learning other curriculum subjects.

- They do a lot of teaching in several schools during their university years whilst they can apply their knowledge, acquire some practice and consult on topics.

The National Basic Curriculum is presently under construction and has been highly debated among the leaders of educational policy, researchers, and educators. It should be concluded and accepted by the parliament this year. The concepts of informatics education is also under way and views are certainly converging. The basic aim of informatics education in schools should focus on introducing the following aspects to children:

- Getting acquainted with the instruments of informatics, to realise how they work and identify how they could profit from their use.

- Getting acquainted with application software and realise their use in various fields.

- To understand algorithmic thinking and to be able to produce algorithms in solving various problems.

- To be able to build a model on different themes.

- To understand the place of informatics in society.

These aspects should be introduced on different levels of education for various age groups especially aiding children with disabilities.

LOGO is a useful tool in achieving several goals of the above. It is not only a programming language, but a suitable tool in developing educational microworlds that are easy to enhance further. We have developed several educational programs and microworlds on different subjects. Apart from introducing LOGO to teacher training we have conducted several experiments with children of different aged groups (from kindergarten to secondary school) and of different abilities (from children with disabilities to those that could be called genius). Such meetings continuously enriched, guided and gave birth to new ideas. The focus of attention has always been the child, his abilities and needs, and not the programming language itself. Thus the microworlds concentrated on helping to grasp the idea and meaning of something important with the least necessary previous knowledge of computers or programming. This paper discusses an approach to aid language education by modelling the structure and meaning of text.

The model of text

Model 1. A text is a series of sentences.

n

<text> ::= { <sentence> }

1

where <sentence> i ::= { an element of the set of

predefined sentences }

This definition can be used as the first stage in modelling text. It presumes the existence of a set of sentences of which a random number can be chosen also at random. Depending upon the subject of the text enhancements can be made.

E.g. Postcard: [3]

In this case the set of sentences can be individual thoughts on the subject to be transmitted.

Enhancement:

- <Sentence> 1 could be something like

Dear <name>.

where <name> is the set of persons to whom we should send a postcard.

- <Sentence> n could be something like

<ending> Peter.

where <ending>::= {Your dear | Bye | See you | Love | ...}

or else <ending> can correspond to the specific <name> used.

Creating this program develops an insight not only on lists and text generation but also on the meaning of random choice.

 

Model 2. A sentence is a series of grammatically structured words.

<sentence> i ::= <time clause> <clause of place>

<subject clause> <predicate clause>

<predicate clause>::=<subjective conjugated clause>

| <objective conjugated clause>

<subjective conjugated clause> ::= <subjective

conjugated verb>

<objective conjugated clause> ::= <objective conjugated

verb> <object clause>

<object clause> ::= <adjective> <object>

<subject clause> ::= <adjective> <subject>

... each of which is an element of a set of predefined

words or expressions

 

E.g. Generating a story: [4]

In this case the sentences should tell unpredictable actions of the actor or actors corresponding to the theme of the story.

Enhancement:

- Like that of model 1

<sentence> 1 could be something like

Once upon a time ...

<sentence> n could be something like

They lived happily ever after.

 

- Choose the theme of the story then choose the actor or actors of the story and build the rest accordingly.

. In case of one actor, the structure of the sentences might always contain <subjective conjugated clause>. While in case of two actors an <objective conjugated clause> would do better or even a random choice from the two.

. The set of names or synonyms included in <object> and <subject> should be different or correspond to the line of happenings. If one of the actors is chosen as a subject then the object should definitely be chosen so that it corresponds to the other actor.

. Adjectives should be chosen in accordance with the actors.

- Articles should be generated by algorithm.

This program could be further enhanced with deeper knowledge of grammar.

 

Model 3. Each word has a meaning.

a word is the syntactics of a command which bears

a function as its semantics

There are two types of functions concerning input:

type1 : takes no input

type2 : take one or more input

There are two types of functions concerning output:

1type : does not output

2type : outputs a value

Types can of course be combinations too: 1type2, or 2type2, ...etc.

Other internal properties depend upon the actual semantics, whether it has an effect, or whether it modifies environment variables.

E.g. 1. The nationalisation of LOGO

LOGO is a natural environment for english speaking children. It should be a natural environment for children of various language environments. The nationalisation of a command set is not as easy as translation of the words themselves. The commands have to possess communicative power as natural as possible [5].

Constructing the national version of LOGO is very helpful in understanding and interpreting LOGO the proper way. It also gives a deep insight to the properties of a functional programming language. Teachers should encourage the modification of existing LOGO version to a self-suiting variation. [6]

E.g. 2. Kidlogo [7]

Kidlogo is a LOGO-like environment for preschoolers. Algorithmic thinking and implementation is an uneasy task in itself, syntactic restrictions can hinder this approach especially at an early age. Kidlogo was developed for children with disabilities and later completed for preschoolers. The system consists of spirally building LOGO environments like drawing, music, animation, and text processing, the products of which can be combined to form a story. The very first stage is based on the easiest computer controlling device, the joystick. In the second stage the computer can be controlled through the meaningful use of icons that are glued on the side of each key on the keyboard. While the third stage is accomplished through the use of predefined commands. Thus children can control the computer through stages that are always building on the previous stage and enables the child to control the computer in a more sophisticated manner if he or she is ready to do so. This spiral grows into the full use of LOGO. From the second stage, the control of computer through icons, the child is able to develop procedures and build new words from basic, preprogrammed, or previously built procedures. Procedures can be built by evoking actions with a single key or typing procedure names, and mistakes can be corrected by deleting the last step (or the whole). The environments are introduced in the following order: joystick drawer, drawer, music, animation, creation of sprites, text processing. The order of introduction is of great importance, since the next environment includes the tools of the previous one and enhances it further.

Drawing in itself is extremely motivating at an early age, but animation has even greater power. Even drawing is created by movement.

In the animation environment one invokes a subject actor and each command specified is acted upon the subject.

E.g. - to change colours

- to change size

- to perform an action ...etc.

The environments are building on top of each other so actions are layered in the following way too:

-LOGO words or corresponding icons: forward, back, right, left,...

-preprogrammed words with the help of the previous commands

go - slowly forward

run - fast forward

jump - up then down

fly - move in a circular motion

.......

-creating words implying movements with the help of the previous functions

Using this environment the children are introduced not only to informatics, but also realize the importance and the meaning of words, and text [8].

E.g. 3. Airport [9,10]

This microworld represents an airport and simulates the basic movements in it. The animation itself is continuous and at any moment an event can be evoked by typing defined commands. The wording is of utter importance, so it is necessary to describe the meaning of the hungarian words in use.

kiszállás - deplane: the passenger gets off the plane, walks to the bus, gets on the bus, the bus takes him to the airport building where he gets off the bus and walks into the building;

beszállás - emplane: the passenger walks to the bus, gets on the bus, the bus takes him to the aeroplane where he gets off the bus and gets on the plane;

leszállás - landing: the aeroplane approaches the runway and lands smoothly;

felszállás - takeoff: the aeroplane takes off at the runway and flies around the airport sky till further instructions;

száll - in hungarian means fly, and -ás is an adjectival postfix.

ki - out

be - in

le - down

fel - up are prefixes

As you can see from the structure of the words the prefix determines the event itself. Thus the whole meaning lies in the proper use and understanding those few letters.

The actor object of the microworld is the passenger:

He can be activated otherwise to go: into the building, into the bus, into the aeroplane, while exiting from the place he has been inside.

Objects of the microworld:

bus, passenger, aeroplane, sun, ...etc.

The objects could change colours when given a colour name after theirs:

brown, orange, yellow, blue, ...etc..

Other events included: the rise of the sun, or sunset which are by the way expressed in hungarian with the same száll adjective. Thus this whole microworld evolves around the same adjective in different forms, giving different meanings to different preposition use.

This microworld is not so much object oriented, but event oriented.

Model 4. Understanding a sentence means understanding the words in their context.

Syntactics:

n

<sentence> i ::= { <word> }

1

where <word> 1 ::= a word starting with a capital letter

<word> n ::= a dot

Semantics:

word 1 : Functions with capital letters invoke

execution of the specified action.

word i : Each word i is a function which needs an

input value as its parameter sets the

environment variable in correspondence

to its semantics and outputs a value for

the previous function that invoked it.

word n : The dot does not have a parameter, it

starts the flow of information backward.

In natural language the start of a sentence is recognised by the capital letter of the first word. Each word has a meaning which is understood in context only i.e. by understanding the word that proceeds it. The dot finalises the sentence which should be interpreted in its context.

E.g. Family movie [11]

Mother - /First word./ /What's with her?/

Mother says /What does she say?/

Mother says doggie /What to do with doggie?/

Mother says doggie come /Where?/

Mother says doggie come here /Ok, and what else?/

Mother says doggie come here . /End of sentence. Inform back./

. reports to here that the sentence ends

here sets the value of WHERE to the relative value of the talker

and reports to come + end

come sets the value of DOTHIS to "come"

and reports to doggie + WHERE + end

doggie sets the value of DOER to "doggie"

and reports to says + DOTHIS + WHERE + end

says reports to mother to say + DOER + DOTHIS + WHERE + end

Mother sets the value of TALKER to "mother"

(thus the absolute value of WHERE is set),

and since it start with a capital letter thus it evokes execution.

Since each word /function/ sets the value of the environment, further sentences change only the values that are indicated, thus the rest of the environment variables are presumed to remain.

E.g. Doggie go home .

Presumes that the talker is still mother, home sets the relative value of WHERE, and doggie sets the absolute value to the position of his home /which each actor possesses/.

Boy come here .

Changes the DOER to boy and presumes that WHERE is where mother is.

Go home .

Presumes that the DOER is still the boy and WHERE is where mother is.

This "Family movie" microworld is object oriented and produces a context controlled animation environment which is easy to expand.

The simple sentences structure:

 

1. <do> <where>

where <do> ::= {come, go,...}

<where> ::= {here, home,...}

2. [<who>] <do> <where>

where <who> ::= {boy, doggie, father, mother,...}

3. [<who> says] [<who>] <do> <where>

4. [<who> says] [<who>] <do> <where> [the <what>]

where <do> ::= {come, go, bring, take,...}

<do> ::= {ball, bone, cake,...}

n. or even further expanded.

Conclusion

The LOGO programming language is not only useful in learning programming, but the knowledge on the subject that is built weighs much heavier in the pan of creating a proper model. Trial and error strengthens the rules that govern a microworld, thus experimenting enlightens even the darkest points. Playing with a well built microworld can be as fascinating as playing with a game. Teachers should be encouraged to develop such microworlds to aid curriculum subjects.

References

[1] Péter Szlávi - László Zsakó, Módszeres programozás: rekurzió (Systematic programming: recursion), ELTE University publication, 1988.

[2] László Zsakó, Módszeres programozás: hatékonyság. (Systematic programming: efficiency.), ELTE University publication, 1991.

[3] Harold Abelson, A Beginner's guide to Logo, BYTE, August, 1982.

[4] Márta Turcsányi-Szabó, "Story", (a LOGO program), 1984.

[5] Márta Turcsányi-Szabó, MLOGO, a LOGO honosítása. (The nationalisation of LOGO), Unpublished dissertation, 1985.

[6] Márta Turcsányi-Szabó, LOGO in a University Education: Experiments and Plans, Proc. International Conference LOGO 85, M.I.T., 1985.

[7] Márta Turcsányi-Szabó, "KISLOGO" (Kidlogo, a Logo-like system), 1985.

[8] Hadnagy - Havas - Körmendi - Turcsányi - Vasánszky, Tanulmány egy óvodai számítógépes kísérletrõl, (Study of an experiment in kindergarten with computers.), Unpublished Study, 1986.

[9] Márta Turcsányi-Szabó, "REPÜL_TÉR" (Airport, a LOGO program), 1984.

[10] Kõhegyi - Zsakó - Turcsányi - Szlávi, Teaching Teachers the Educational Use of Microcomputers., Proc. International Conference on "Microcomputers in Education", Balaton-Almádi, 1985.

[11] Márta Turcsányi-Szabó, "Family movie" (LOGO program), 1993.

 



Vissza