Guide to the Transcribed Listings F and H

J Strother Moore
Robert S. Boyer
Grant O. Passmore
August, 2017
listings-f-and-h.txt on this directory is is a transcription of Listing F and Listing H into a simple text file.

We believe this is the complete POP-2 text for PLTP as of 14 September, 1973. The file was produced by running the scanned images through an OCR processor, grabbing the resulting text from each listing, concatenating the two texts, and correcting the obvious OCR errors. If some line in this file looks odd, consult the scanned images. Please report to the authors any correction that should be made to our transcription.

In the event that you have a modern POP-2 compiler and wish to run this code, be advised that you will have to solve the various file i/o issues that were peculiar to 1973 Edinburgh POP-2/4100 implementation. A relatively minor concern to be addressed is the use of character codes in FUNCTION ISNUMSKO and in the file [PPR]. While ASCII or Unicode mappings are common today, our transcription preserves the original POP-2 character-to-integer codes. So for example, when FUNCTION ISNUMSKO checks that the first character in a name is strictly after the letter 'H' and strictly before the letter 'O', it uses the codes 40 and 47 for those characters, not say ASCII 72 and 79. See the POP-2/4100 Users Manual for system-related POP-2 features, including Appendix 2, page 66, for the then-standard POP-2 character set mapping.

We have tried to be faithful to the POP-2 text in each file, with a few exceptions.

The lineprinter banner at the top of each file is transcribed as a POP-2 comment, e.g.,

[ADDEFS]  TRACK  9                                   [ 21.16 14 SEPT 1973]
CREATED   20.03   14 9 1973

There is a misspelling, in a comment, preserved here but marked with '[sic]'.

There is a typo in a comment, preserved here but marked with '[sic]', stating an incorrect version of the correctly implemented COND-distribution rule.

The Edinburgh lineprinter wrapped long lines after 80 characters. Those wrapped lines have been unwrapped.

The identifier AVOIDSTAR in the VARS declaration in the first non-COMMENT line of file [/ PROVE] was actually written as AVOIDSTARS in the original source listing. The two names are treated identically because the Edinburgh POP-2 compiler truncated names to 8 characters.

The identifier GENSKOLIST called as a function in the definition of FUNCTION ARTIFINTEL in file [/ PROVE] was actually written GENSKOLISTT in the original listing. Again, the two names are treated identically by the Edinburgh POP-2 compiler.