This note discusses the techniques which would need to be adopted were we to implement facilities like those of CTSS for dealing with line-numbered files.
It is cardinal to the approach that the system produces a fresh number for each line of input typed.
There are two ways of doing this:
The simultaneous filing-editing process involves passing all of the 'manual' line numbers to a temporary file, sorting it on completion, and then doing a merge operation. This is not cheap because it involves both a sort and a pass of the complete file. Now all editing involves a pass of a file, and perhaps this point is not significant. It should, however, be noted that in encouraging users to correct their files as they them one is making the FILE command more expensive, and thus may not be a good thing.
Compilers, assemblers and user programs are not geared to ignoring certain parts of an input line which contain the number. To deal with this there are two approaches.
A file may be created in at least three ways:
If the standard editor presupposes line-numbered files, then not merely must the now route (a) be planned this way, but the existing routes (b) and (c) must be changed. This is a substantial upheaval.
Establishments which are basically card-oriented are used to ignoring parts of a card, and relying on fixed format in the rest. Even so, they have to do it explicitly. Chaos easily results in CTSS if a program consumes files made either by console or by O.P. output or by the newer console facilities. One gets absurdities such as requiring each line to have not more than 74 significant characters, so that the consuming programs can ignore the last 6 which are either the line number or are wasted. The situation is much worse in a traditionally free-format place such as UML.
11 November 1965
Copyright © 1965 University of Cambridge Computer Laboratory. Distributed by permission. Thanks to Barry Landy, Roger Needham and David Hartley for giving permission to distribute these documents. Thanks to Barry Landy for lending me the paper document from which this was scanned. Any typographical errors probably arose in the course of OCR.
Previous Planning Document: Initial Planning of the
Cambridge On-Line System, JCV, 9 November 1965
Next Planning Document: 9. (Number 9 missing)
Return to Cambridge Supervisor Planning Documents
Return to CUCPS TITAN page
Return to CUCPS home page
Return to University of Cambridge home page