Reading Flexowriter SFD Algol-60 tapes



Algol-60 programs were typed (and punched) in a specific instance of an Algol representation style and used symbols which are partly incompatible with the now standard ASCII character set. Also the numerical equivalents of the characters were quite different from ASCII.
Reserved Algol words (begin,....,end) were underscored. As is illustrated by Pascal, which uses an comparable set of reserved words, underscoring could be omitted by simply disallowing the programmer to redefine these words. (In many Algol and Pascal texts underscoring or boldface typing is used exclusively for educational purposes). But underscoring simplifies the task of the compiler's parser; in view of the sparse resources of the time this has probably been the primary reason for underscoring¹.

For underscore (and vertical stroke) the Flexowriter SFD had keys that didn't result in carriage movement. Parity checking, effectively reducing the number of useful bits per frame to 6, could be realized without sacrificing the availability of both uppercase and lowercase letters, as the Flexowriter used two special punch codes, one for entering uppercase mode, and one for entering lowercase mode.
These peculiarities make translation of Flexowriter code into ASCII code less than straightforward.

We have written a program³ (in FreePascal) for translating the bytes read from a tape either into Flexowriter or ASCII types. To obtain Flexowriter-like output we use Unicode; notice that this approach is only meant for human consumption!
For ASCII, a different representation style has to be agreed upon. We choose the conventions proposed by Andrew Makhorin for the GNU MARST Algol-to-C translator.
The program is based on the Flexowriter Punching Code table taken from E.W. Dijkstra's 1962 course in Algol-60 programming (see also 'Het MC-ALGOL 60-systeem voor de X8 : voorlopige programmeurs-handleiding' by F.E.J. Kruseman Aretz ).
As an example, we show a piece of Algol-60 text, read from a papertape prepared by Walter Hoffmann at MC² in 1968, in Flexowriter-style and as ASCII text.
¹) Algol-60 programs for other installations were often prepared on ASCII compatible equipment; in these programs the reserved words used to be enclosed in quotes.
²) Mathematisch Centrum (now CWI) in Amsterdam.
³) Downloadable programs readflex_uni.p and readflex_asc.p.

CM_homepage

X