FOIL (programming language) explained

FOIL was the name for two different programming languages.

CAI style language

The first FOIL was a CAI language developed at the University of Michigan in 1967. The acronym stood for File-Oriented Interpretive Language and it was very similar to other CAI languages like COURSEWRITER and PILOT. However, it tried to make the language somewhat block-structured using whitespace which ended up making the language vaguely similar to BASIC or ABC.

Example

<nowiki>
 :START COUNT=0
 TY Enter the number of times you want to repeat the statement:
 ACCEPT
 MAX=NUMBER.(1)
 :LOOP
 TY This loop has run #COUNT times it will terminate when it runs #MAX times
 IF COUNT<MAX,
    COUNT=COUNT+1
    GO TO :LOOP
 TY Do you want to do this again?
 ACCEPT
 IF 'yes', GO TO START
 IF 'no' GO TO FINISH
 :FINISH
 TY Goodbye!
 STOP
</nowiki>

Music generation language

The second FOIL was a music generation language for the Touché computer instrument in 1979. The Touché was a keyboard that had digital tone generation and allowed you to program software for performances. The acronym stood for Far Out Instrument Language and was succeeded by MetaFOIL and FOIL-83. The language was developed by David Rosenboom and was based on Forth.

External links