11/3/71 FORM (I) NAME form -- form letter generator SYNOPSIS form proto arg ... 1 DESCRIPTION form generates a form letter from a prototype letter, an associative memory, arguments and in a special case, the current date. If form is invoked with the argument x, the fol- lowing files come into play: x.f prototype input x.r form letter output x.am associative memory form.am associative memory if x.am not found. Basically, form is a copy process from the file x.f to the file x.r. If an element of the form \n (where n is a digit from 1 to 9) is encoun- tered, the nth argument is inserted in its place, and that argument is then rescanned. If \0 is encountered, the current date is inserted. If the desired argument has not been given, a mes- sage of the form "\n: " is typed. The response typed in then is used for that argument. If an element of the form [name] is encountered, the name is looked up in the associative memory. If it is found, the contents of the memory under this name replaces the original element (again rescanned). If the name is not found, a message of the form "name: " is typed. The response typed in is used for that element. If the asso- ciative memory is writable, the response is en- tered in the memory under the name. Thus the next search for that name will succeed without interaction. In both of the above cases, the response is typed in by entering arbitrary text terminated by two new lines. Only the first of the two new lines is passed with the text. The process is in- stantly terminated if an end of file is encoun- tered anywhere except in the associative memory. FILES x.f input file x.r output file x.am associative memory form.am associative memory SEE ALSO type DIAGNOSTICS "settup error" when the appropriate files cannot be located or created. BUGS "settup" is misspelled. OWNER rhm, ken