Flying With PET PILOT:
Kids And Microcomputers At Peninsula School
Katie A. Thornburg and David D. Thornburg
Peninsula School Computer Project
Peninsula School, Peninsula Way,
Menlo Park, CA 94025
Peninsula School is a privately owned and operated parent-teacher cooperative which provides an alternative to public elementary education in the San Francisco Bay area. Microcomputers were introduced at Peninsula School during the fall of 1977 in response to parent interest in preparing their children to experience the ever-increasing utility of computers in modern society. The process of developing computer literacy in the Peninsula community has been a multi-faceted one. It has involved acquainting both faculty and students with computer capabilities and designing suitable programs to promote the use of the computer as a creative tool. Funding of the project has been accomplished by parent donations and the sale of programs written and donated to the school by parent computer professionals. After school computer classes have supplemented the limited classroom availability of the computers.
The initial exposure of students and faculty to the games authored by the parent volunteers came through computer open houses and a very brief series of classes. This introduction was sufficient to generate considerable student enthusiasm and to allow the teachers to assess the appropriateness of computer based materials for individual classroom situations. Due to the limited nature of available resources (both volunteers' time and the number of microcomputers-2 PETs-then at the school's disposal), educational efforts were subsequently focused on the upper grades.
The initial program library provided by the volunteers consisted of:
- DRAW, a program that allows even young children to make pictures using the PET's graphic characters
- the programming language PET PILOT
- adaptions of 5 programs to PET PILOT:
GOLD, a version of Goldilocks in which the user helps the computer write the story
SKY, a question and answer game whose questions depend in part on the user's answers.
NAMES, which explores ideas the user has about his or her name
HANDS, which suggests new ways of looking at everyday things
HAMMURABI, a simulation in which the user makes economic decisions that mean life and death in the small country he or she rules
- LEMON, a simulation of running a lemonade stand
- QUEST, a challenging cave exploration game
- WSFN, a programming language that can be used to teach elementary concepts of computer programming and spatial representation by having the user give instructions to a make-believe "turtle" on the display screen.
NAMES and HANDS were originally written to encourage students with writing blocks to express themselves verbally by engaging them in a dialogue. Among the additions to these programs the MAD LIB was another creative writing stimulus which has proven to be quite popular. In this type of program, the user is asked to supply examples of several parts of speech which are then inserted by the computer into the appropriate blank spaces of a pre-programmed story often provided by another user.
During the course of the school year students progressed from playing games to writing programs. As they became comfortable with the mechanics of interacting with the computer, students began to identify loopholes in games such as LEMON. Both the sense of mastery obtained from locating these loopholes and the humorous potential offered by creative writing exercises such as GOLD and MAD LIB provided an impetus for students to learn programming.
Of the languages available to us (PILOT, BASIC, WSFN), PET PILOT was selected as the jumping-off point for introducing students and teachers to programming. PILOT is a computer language for dealing with words (in the sense of character strings) rather than for performing computations. However, it should be noted that the Peninsula School PILOT interpreter is written in BASIC rather than in machine language; BASIC commands for numerical manipulations can be readily incorporated into PILOT programming using our interpreter. The examples of PILOT games provided by the volunteers were developed to serve as models for teachers to modify in generating material more relevant to their own classroom needs.
As it was our primary intent to enable students and teachers to become comfortable with microcomputing, we chose a computer language that would minimize the mechanical hang-ups of communicating with the computer, thereby minimizing programmer frustration in achieving his or her goal. PILOT satisfies this objective in that its commands are simple and it performs important formatting functions automatically. The end result - the appearance of a story or story-like game on the computer display - therefore does not become subordinated to the intricacies of the computer language in which it is programmed.
PILOT (Programmed Inquiry, Learning or Teaching) was invented by John A. Starkweather at the University of California Medical Center in San Francisco to simplify the writing of programs that mainly consist of conversational dialogs. It is a language that can be readily understood by most eight year olds. In our version of PILOT most statements have the form:
command: textor
command condition: text
Our set of ten commands and two conditions allows compact representations of very sophisticated programs to be made.
The commands most commonly found in student programs are T:, A: and M:; often in conjunction with the conditionals Y and N (for yes and no).
T: WHAT IS YOUR NAME?
will cause the words WHAT IS YOUR NAME? to be displayed on the computer screen.
A: ANSWER$
will capture a user response and place this result in the string variable ANSWER$.
M: HORSE, COW, ELEPHANT
will compare the result of the most recent A: statement with the words HORSE, COW, or ELEPHANT. As a result of using an M: statement, the value of the conditionals Y and N is set. If any of the words HORSE, COW, or ELEPHANT is contained anywhere in the response to the previous A: statement, Y is true. Y and N are mutually exclusive. Selective use of command statements occurs when the conditional appears alongside the command. In a PET PILOT program in which the statement pair
TY: THAT IS A GOOD ANSWER!
TN: PLEASE TRY THAT AGAIN.
appears, THAT IS A GOOD ANSWER! will be printed if and only if Y is true. PLEASE TRY THAT AGAIN. will be printed if and only if N is true.
In comparing PILOT with BASIC, T: is often compared with PRINT, and A: with INPUT. As implemented on the PET, there are important differences in these operations. These differences generally result in shorter, more readable programs in PILOT. If a long string of words in BASIC is displayed using PRINT, it is possible to have words fracture at the end of a line and finish on the next line. When T: is used in PILOT, the interpreter verifies that a word completely fits on a line before that word is displayed on the screen. If the word does not fit, the word is automatically printed on the next line. The major difference between A: and INPUT involves character shifting. When character strings are entered, A: automatically shifts the characters so that the keyboard behaves as a normal typewriter. (i.e., unshifted letters appear in lower case and shifted characters appear in upper case.). This overcomes the character shifting problem found in the 8K PET's.
For most of our beginning programmers, T: and A: statements have been adequate to allow stories and dialogues to appear on the computer screen. However, we can better illustrate the greater simplicity and legibility of language arts programs written in PILOT with a teacher-authored version of IN and OUT, a program involving the M: command to test for the "INNESS" or "OUTNESS" of various words. After being presented with numerous examples of words which are either "IN" or "OUT", the user is asked to identify the criterion of "INNESS" or "OUTNESS"; in this case words beginning with vowels turn out to be "IN," and those beginning with consonants are therefore "OUT."
As written in PET PILOT, the relevant criterion defining portion of the program appears as
A: AN$ M: bA, bE, bI, bO, bU, TY: AN$ IS IN, TN: AN$ IS OUT.
As written in BASIC, the equivalent function appears as
1000 T$ = "AEIOU" 1100 F = O 1200 INPUT AN$ 1300 FOR I = 1 TO 5 1400 IF LEFT$(AN$, 1) = MID$ (T$I, 1) THEN F = 1 1500 NEXT I 1600 IF F = 1 THEN PRINT AN$; "bIS IN." 1700 IF F = O THEN PRINT AN$; "bIS OUT.".
(In the above two program segments, b indicates a typed space.) If the matching had been performed against a list of words rather than against single letters, the BASIC program would have grown much more complex. The PILOT program, however, would have remained about the same in length.
Just as playing computer games has generated an interest in programming, student curiosity about computers has bred student enthusiasm for every aspect of microcomputing. Older children (at least 9 years of age) branched out into BASIC and WSFN. Unlike many apprehensive adults first encountering microcomputers, our students have approached the machines eagerly and have emerged from the program with confidence in their abilities to interact with computers. Concommitantly, students have been seen to have an increased confidence in themselves that has carried over into other areas of their lives.
The computers have been a vehicle for bringing children together. Each computer has often been used by two or three children working jointly on a program or game. This sharing of resources has been extended beyond the solving of common problems to peer teaching. Children who have acquired a mastery over some aspect of microcomputing readily and voluntarily share their knowledge with newcomers, thus imparting a tremendous sense of cohesiveness to the entire computer activity.
Classroom time allotted to computer instruction both during and after school has proven insufficient to meet student demand for access to the machines. Students and faculty have obtained permission to take the computers home overnight and on weekends to share with their families. At a recent workshop held at the school, children were able to spend an entire day learning about computers with their parents and friends. On viewing her children's involvement in the computer project, one parent remarked, "It's great!"
Acknowledgement: We wish to thank Dotty Calabrese, Anne Branch, Dave Offen and Phyllis Cole for their contributions to this article. We also wish to acknowledge the tremendous energy, effort and enthusiasm expended by Larry Tesler, Phyllis Cole, Dave Offen, Roger Chaffee, Bob Albrecht and Ramon Zamora in making this project a reality.