4
:j * i^Qsfito Cc>a/<*&££*>c% tao £& '':,. //"/Y 4? POK4 V.'^V- /OXf,? 1770 TEACHING AND LEARNING LANGUAGES C. Bellissant 1. INTRODUCTION In all instructional processes there are at least two characters: on one side the teacher and on the other, the student. The liaison between the two is established in various ways. The simplest way, oral communication, still seems to have a few golden days ahead of it. Books, whether programmed or not, are the mediums employed with increasing frequency. Audiovisual techniques have barely been mastered, and people are already including computers into the process. A tenacious theory predicts that machines will soon replace teachers and will, of course, do a much better job in teaching than teachers themselves. Luckily, we have not yet reached such a point. The computer is only a tool and ought to remain as such, especially in an area as important as education. Computer assisted instruction systems should be considered in the same class as the other intermediary agents mentioned above. Moreover, it would be highly appropriate to employ a combination of the various means of communication between teacher and student, given the inherently complementary nature of these media. One can introduce the computer into instructional processes at many different points: for example, in experimenting with models of knowledge attainment, in statistical evaluation of results obtained, in planning of the scholastic activities, etc... Here, I shall deal only with the use of computer by the teacher when he writes his course on the one hand, and by the student as he pursues his learning on the other, in short, at the two extremes of the instructional process. These two applications of computers depend essentially on the degree of liberty which one wishes to leave to the student. If one wishes to guide the student along his way in the course, one will use a language of the type ..course-writer", where the program involved strictly controls the progress of the session and practically nothing is left to the initiative of the student. Conversely, if one wishes to leave him with the ability to act on his own initiative, one will then employ a language with consi- derable conversational orientation. 2. TEACHING LANGUAGE One may ask oneself what is the justification for specialized teaching languages. In fact, there already exist so many programming languages that it should suffice to use one of them in the context of automated teaching. The language most suitable for this purpose would appear to be SNOBOL 4. It contains a whole set of statements needed for parsing and constructing strings of text, as well as very sophisticated pattern-matching facilities. Unfortunately, its syntax makes it difficult to use by a non-specialist in computer science. If one wants to spread this mode of teaching, however, it is necessary to entrust to the teacher the task of writing his own course. One is therefore led to define a new type of specialized language, specifically adapted to this application. The principal properties required of such a language are the following: 2.1 The language should be as general as possible. This is to say that it should be able to accommodate a wide spectrum of courses, with regard to the content, the form, and the teaching method they embody. Thus, it should not be restricted either to a particular discipline or to a particular pedagogical strategy. 2.2 It must be capable of being easily mastered by those teachers who wish to use it. They are not computer scientists, and are easily discouraged by complicated syntax or semantics. However, it should also avoid the opposite extreme, which consists of providing, in the name of simplicity, a language which is inefficient owing to an insufficiency of concepts. A careful balance between these two objectives must be achieved. 2.3 The teaching language should be readily expandable in order to allow the introduction of new procedures, necessitated by the needs of a particular teaching strategy. This implies that the definition of the language should be modular. The technique of interpretation would seem best suited to this purpose in that it is relatively easy, given this mode of operation, to add new facilities. For example, the teacher might wish to use in his course a different module for response analysis in place of that which he has been using. The computer scientist should then be able to quickly extend the power of the language in the desired direction. 2.4 The actual use of the language must be convenient. This strongly suggests a conversational environment, letting the teacher write his course at the terminal, where an incremental compiler can detect the syntactic and semantic errors as they appear. 2.5 The language must facilitate the preparation of courses which will not seem monotonous in the eyes of students. This can be obtained by a randomizing process, applied both to the manipulated quantities and to the statement sequences comprising the course. 3. LEARNING LANGUAGE The first question to be asked about a learning language HI/145

Cc>a/c% £& V.'^V- ///Yjd969fg9400/jd969fg9400.pdf · is whatis itsintendedpurpose. Thereare,infact,several conceivableapplicationsofsucha language.Itcouldbe,for

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Cc>a/c% £& V.'^V- ///Yjd969fg9400/jd969fg9400.pdf · is whatis itsintendedpurpose. Thereare,infact,several conceivableapplicationsofsucha language.Itcouldbe,for

:j

* i^Qsfito Cc>a/<*&££*>c% tao £& '':,. //"/Y 4?POK4 V.'^V-

/OXf,?

1770

TEACHING AND LEARNING LANGUAGES

C. Bellissant

1. INTRODUCTION

In all instructional processes there are at least twocharacters: on one side the teacher and on the other, thestudent. The liaison between the two is established invarious ways. The simplest way, oral communication, stillseems to have a few golden days ahead of it. Books,whether programmed or not, are the mediums employedwith increasing frequency. Audiovisual techniques havebarely been mastered, and people are already includingcomputers into the process.

A tenacious theory predicts that machines will soonreplace teachers and will, of course, do a much better jobinteaching than teachers themselves. Luckily, we have not yetreached such a point. The computer is only a tool andought to remain as such, especially in an area as importantas education. Computer assisted instruction systems shouldbe considered in the same class as the other intermediaryagents mentioned above. Moreover, it would be highlyappropriate to employ a combination of the various meansof communication between teacher and student, given theinherently complementary nature of these media.

One can introduce the computer into instructionalprocesses at many different points: for example, inexperimenting with models of knowledge attainment, instatistical evaluation of results obtained, in planning of thescholastic activities, etc... Here, I shall deal only with theuse of computer by the teacher when he writes his courseon the one hand, and by the student as he pursues hislearning on the other, in short, at the two extremes of theinstructional process.

These two applications of computers depend essentiallyon the degree of liberty which one wishes to leave to thestudent. If one wishes to guide the student along his way inthe course, one will use a language of the type..course-writer", where the program involved strictlycontrols the progress of the session and practically nothingis left to the initiative of the student. Conversely, if onewishes to leave him with the ability to act on his owninitiative, one will then employ a language with consi-derable conversational orientation.

2. TEACHING LANGUAGE

One may ask oneself what is the justification forspecialized teaching languages. In fact, there already existso many programming languages that it should suffice touse one of them in the context of automated teaching. Thelanguage most suitable for this purpose would appear to beSNOBOL 4. It contains a whole set of statements neededfor parsing and constructing strings of text, as well as verysophisticated pattern-matching facilities. Unfortunately, its

syntax makes it difficult to use by a non-specialist incomputer science. If one wants to spread this mode ofteaching, however, it is necessary to entrust to the teacherthe task of writing his own course. One is therefore led to

define a new type of specialized language, specificallyadapted to this application.

The principal properties required of such a language arethe following:

2.1 The language should be as general as possible. This is to

say that it should be able to accommodate a wide spectrumof courses, with regard to the content, the form, and theteaching method they embody. Thus, it should not berestricted either to a particular discipline or to a particularpedagogical strategy.

2.2 It must be capable of being easily mastered by thoseteachers who wish to use it. They are not computerscientists, and are easily discouraged by complicated syntaxor semantics. However, it should also avoid the oppositeextreme, which consists of providing, in the name ofsimplicity, a language which is inefficient owing to aninsufficiency of concepts. A careful balance between thesetwo objectives must be achieved.

2.3 The teaching language should be readily expandable inorder to allow the introduction of new procedures,necessitated by the needs of a particular teaching strategy.This implies that the definition of the language should bemodular. The technique of interpretation would seem bestsuited to this purpose in that it is relatively easy, given thismode of operation, to add new facilities. For example, theteacher might wish to use in his course a different modulefor response analysis in place of that which he has beenusing. The computer scientist should then be able toquickly extend the power of the language in the desireddirection.

2.4 The actual use of the language must be convenient.This strongly suggests a conversational environment, lettingthe teacher write his course at the terminal, where anincremental compiler can detect the syntactic and semanticerrors as they appear.

2.5 The language must facilitate the preparation of courseswhich will not seem monotonous in the eyes of students.This can be obtained by a randomizing process, appliedboth to the manipulated quantities and to the statementsequences comprising the course.

3. LEARNING LANGUAGE

The first question to be asked about a learning language

HI/145

Page 2: Cc>a/c% £& V.'^V- ///Yjd969fg9400/jd969fg9400.pdf · is whatis itsintendedpurpose. Thereare,infact,several conceivableapplicationsofsucha language.Itcouldbe,for

<■*is what is its intended purpose. There are, in fact, several

conceivable applications of such a language. It could be, forexample, an ancillary facility available to a student in orderto perform computations during the learning process. Inthis case, it corresponds in function to an office calculator.It could also be a language which permits the student topose questions to the system when he is interrupted in thecourse of a lesson. One has then to consider a program ofassistance which recognizes a certain number of key wordsin the student's request, and responds appropriately.Finally, it could be a complete language allowing thedescription of data structures and operations to be effectedon them. It is this type of language which one uses insimulation and gaming experiments. In this situation, thelearning process is almost entirely encompassed within thedomain of the learning language; the task of the teacher isconfined to developingthe situation to be simulated.

Obviously, such languages necessitate a conversationalenvironment, since the requests must be executed on thespot. Here the technique of interpretation is evidently themost appropriate, since repeated evaluation is not a factor.These different objectives of a learning language couldreasonably be combined within a single system, with theresult that the overall flexibility of the system issignificantly increased.

4. THE SYSTEM USED AT THE UNIVERSITY OFGRENOBLE

The Laboratory of Applied Mathematics at theUniversity of Grenoble has at its disposal an IBM 360/67computer accessible from about 50 terminals, includingboth typewriters and graphic consoles. Researchers of thelaboratory use the conversational time-sharing systemCP/CMS. CP is a simulator of ..virtual machines", whichgives the effect that each user has available from histerminal his own standard 360 with its memory and all ofits input-output devices. The computer assisted instructionsystem has been imbedded in this environment. This factpermits the computer to support other tasks in parallel withthat of teaching. The teacher has his own machine availableas does each student. It is the teacher's machine whichsupports the first phase of the process - the developmentof a course. A conversational and incremental compileranalyzes the course typed by the teacher on his terminaland identifies all errors as they appear. The second phase issupported, for each student, on his individual machine. Thisphase deals with the execution of the interpretive codeprovided by the compiler. A student can disconnect at anymoment and invoke the program of assistance which willanalyzehis requests.

5. MAGISTER, AUTHOR-LANGUAGE USED AT THEUNIVERSITY OF GRENOBLE

For the programmer, MAGISTER is a formal languageoriented towards string manipulations. Within this languageone treats characters or groups of characters by eitherpresenting an item to a student or analyzing his answers. Acourse in MAGISTER is composed of one or severalchapters. Each chapter is in fact a program for thecompiler, and a pedagogical unit corresponding to alearning session. i

Lines typed by the teacher are numbered by thecompiler and can also be modified afterwards; they are

111/146

located by means of this number. When the contents of aline is syntactically incorrect, the error is localized by apointer and the compiler reprints the same line numberuntil a correct line is obtained.

A chapter is composed of a series of statements whoseexecution is usually carried out in sequence, except whenotherwise indicated. Variables manipulated in the languageare text strings and they may be referred to by name. Astring composed of numbers can evidently serve as theobject of any ordinary arithmetical operation. A concatena-tion or partition may be applied on anykind ofstring.

5.1 Goto statementAll instruction can be labelled in order to allow

branching. There are twokinds of branches: simple transferto a labelled instruction, or activation of a sequence ofstatements before returning after the calling instruction.Two basic symbols correspond to these two kinds oftransfers. .. -■-< &}>■;&& -il .< ■■;;> :>;-";i-,wJfJ|. ■ . ■ . ■ ,-

ALLERA and ACTIVER.. -

The instruction: ALLERA reading;

is a simple transfer to the instruction labelled „reading",

The instruction: ACTIVER reading;iQI s -■'■■-■ - ;o*PB 'ill ■"-.-:.;

has the same effect plus a return to the instruction whichfollows the transfer. This return takes place at the firstappearance ofa period (.) at the end of an instruction.

In fact, during the interpretation ofan object program,when a period is encountered at the end of an instruction,.two situations may be considered: if the sequence ofinstructions which has been just executed was called bymeans of an ACTIVER instruction, then a transfer to theinstruction following the calling statement is executed, ifnot the next instruction in sequence is taken.

This notion of sub-program is similar to the executionof a PERFORM instruction in COBOL.

The two instructions for transfer, ALLERA and -ACTIVER, may have as operand not only a label but a listoflabels. . ■'-■'"''*&»:■:r,.>.

■g

-;j example: ALLERA el le2 le3;k3l .-,.--: ACTIVER el le2 le3; -... -...: kc .-- \.. ,-."-'- '".',_■ ■■■': ;...■..:.;,.■" ::■_,■- ■ ..<■.:. ..- -■ ■ '" jjfSjJ;

During execution we will execute a transfer tothese three labels with a random decision.

This allows the teacher to present random problemstaken from a group of exercises having the same teaching |result. This list notion will be found in writing andassignment instructions.

Some instructions of MAGISTER such as a readingduring a limited period, a research or a comparison leadlogically to the verification of a test. For example, whetherwe found such and such a sequence in the student's answer,or whether the student has answered or not within seconds,etc... *

The success or the failure of this test can be verified by 1means of a prefix which permits the conditional executionof an instruction. ■■.■..-.;■;.|.The two prefixes are: — (yes, the test is satisfied). I...... .' ■ ~1(no, the test is not satisfied).

Page 3: Cc>a/c% £& V.'^V- ///Yjd969fg9400/jd969fg9400.pdf · is whatis itsintendedpurpose. Thereare,infact,several conceivableapplicationsofsucha language.Itcouldbe,for

» V

r

!'

!

|

r

:

_

Example: LIRE EN 10SECONDES;"I ECRIRE ,/aster! "

If the student has not answered within 10 seconds, hewill see printed on the terminal the message: faster!

Execution of an instruction can also depend upon thesuccess of a condition which is more elaborate than asimple test. It is a conditional instruction whose scheme is:if <Boolean expression> then Unconditional statement>else Unconditional statement>.

A Boolean -expression is similar to those in ALGOLexcept that there are no real Boolean variables and that wealways go back to the verification of a relation betweenarithmetic expressions.

Beside the two instructions already studied, there are inMAGISTER the following unconditional instructions:

5.2Read statement:The simplest form is: LIRE;

The line typed by the student is then retained in aspecific buffer which will be named „last answer".

The program has access to this last answer by researchand comparison instructions.

The teacher can add after LIRE an identifier to specifya buffer in which the student's string will be stored.

Example: LIRE answer;It can also indicate a time limit for the student's

answer.

Example: LIRE answer EN 20 SECONDES;

or: LIRE EN 1 MINUTE;

This delay in answering can then be tested by means ofa prefixed instruction.

5.3 Type statementIt permits to present an item to the student:

Example: ECRIRE „yes";ECRIRE a;

(The contents of the string is typed on the terminal.)ECRIRE „it is" & n & „o'clock";

(The message which will be typed consists ofthree partswhich will be concatenated at printing time. Of course n isa string identifier, contents ofwhich will be printed.)

alb Ie;ECRIRE

(Here is a list of three expressions appearing as operand.At execution time we will print one among these threeexpressions according to a random decision.)

ECRIRE a-b/c;

(We will print a result corresponding to the calculationof the expression. A concatenation operator has a prioritylower than that of an arithmetic operator: The expression10 & 5 + 7 has the value 1012 but (10 & 5) + 7 equals to112.).

5.4Assignment statementIt permits the assignment to a string the value of an

expression. Once again, as in type statement, we find thenotion of list of expressions.

Examples:answer : =a |b |c | 17;

(We assign to the string „answer" one ofthe values a, b,cor 17).

5.5 Compare statementIt allows comparison of values between an expression

and a list of expressions. The first expression can be the lastanswer provided, or an expression given explicitly.

Examples: COMPARER AVEC 17 | a + b;

(We compare the value of the last answer with 17, if itis not 17, with the value of the expression a + b).

COMPARER a & „ing" ET c;

The result of the comparison can be tested by aprefixed statement.

5.6Search statementIt permits to search in a string the presence or absence

of a certain amount ofvalues separated or not by contexts.The result of the research can be tested by a prefixed

statement. .

Examples: CHERCHER „ABC";

(We look in the last given answer for the appearance ofthe string ABC).

CHERCHER DANS a: „ABC" , „XYZ";

(We 4ook in the string a for the appearance of ABCfollowed by XYZ eventually after a context of any length.)

CHERCHER „a"& 17 & a;

(We look for the number 17 preceded by a contextnamed a, then we search after 17 for the same context a).

If the last answer provided is: 2172

then the research is satisfied and, in addition, the string ahas the value 2. '

Thus the search statement operates a truncation of astring followed by one or several assignments if there arecontexts).

CHERCHERDANS a : „b" & " "& „a";

(This statement will execute a shortening of allcharacters preceding the first blank in the string a. It is aconvenient way to isolate the first word of a string calledhere b. The remaining part of the string after the blank isthe new value of a.)

Thus, if a is the string: „one two three four"

after the execution of this statement: b will equal to „one"and a will equal to „two three four.

r ■'

j

ill

!

I

11 1/147

a:=a-b+ 12& a;

Page 4: Cc>a/c% £& V.'^V- ///Yjd969fg9400/jd969fg9400.pdf · is whatis itsintendedpurpose. Thereare,infact,several conceivableapplicationsofsucha language.Itcouldbe,for

4

Contexts may be alphabetic, numerical or free, andhave any given length.

We look for 12 preceded immediately by a numericalcontext composed of 3 digits.

' *

CHERCHER '(a,! b)' ,b;\ -'■

We search for the value of the string b precededimmediately or not by an alphabetical context called a withthe same length as b. The operator ! placed before a stringidentifier signifies the length of this string. If a equals„ABC", ! a equals 3.

.

' £|

Instead of a string, a substring may occur, for example:a (3 : 7) is the sub-string composed of the 3rd, 4th, sth,6th, and 7th characters of the string a. It is another way tocut up a string.

■- S .»,<

'... , -1

■nlA formal grammar describing the syntax ofMAGISTERin Backus normal form is shown in the addendum.

w nau\ v

s:%The definition of the learning language used by thestudent in our system is not yet completed. Its purpose willbe to assist the student in getting information about theproblemsituation (concepts) and to give him the operationsnecessary to resolve the situation.

Our system should become operative in October 1971and the first applications will concern Computer Science atthe University level, elementary mathematics and Frenchgrammar in the secondary school.

j ."■

TJ - ■

.; : £ 5*3 i'^,*~-:■■

■ „-«>;

IREFERENCES . -- ]

BELISSANT, C, 1969, MAGISTER, un langage d'ecriture de cours.In: t'enseignement programme, 7, pp. 75-85.FEURZEIC, W., PAPERT, S.A., 1968, Programming languages as aconceptual framework for teaching mathematics. In: Programmedlearning research, major trends, (DUNOD, Paris) pp. 233-248.FORSYTHE, G.E., 1968, Computer Science and Education. In:Proceedings of the IFIP Congress 1968, vol. 2 (North-HollandPublishing Company, Amsterdam), pp 1025-1037.FRYE, C.H., GENNIK, F.D., FEINGOLD, S.L., 1968,User's Guides

m-

*.:

m

for computer assisted learning. In: Proceedings of the IFIP Congresst -: : ..... " ''*f1968, vol 2 (North-Holland Publishing Company, Amsterdam), pp.

1349-1350. :it ■.., >.\- ■: ■ ■ .: ..-,--." V ''■:. .WEIZENBAUM, J., 1968, ELIZA: A computer Program for the , :.,,..... « ... - ....,,. . -,

Study of Natural Language Communication between Man and . ... ur>immMachine.C.A.C.M., vol. 9, pp. 36-45.ZINN, K.L., 1968, Languages for programming conversational useof computers in instruction, Proceedings of the IFIP Congress 68,vol. 2 (North-Holland Publishing Company, Amsterdam), pp; ■ -1388-1394.

■■:■■

■ . .

|*■

. :

11/148

Examples: CHERCHER '<a,3>' & 12;

:o PLANIT. System Development Corporation, Technical Memo-randum, pp 96. .rONGE, F.M., 1968, Design of a programming language and system

: : ■

''■? >;:« : ',- ?£f|§§..'

' ! - :-.; ■ : f : jftafi Sll "

I If .-1