Early versions of Unix included Doug McIlroy's tool
tmg ("transmogrifier"), an early compiler-compiler. TMG was implemented in Dennis Ritchie's assembly language as well as in TMGL itself (the language that TMG translates into assembly).
Here is TMG's manual (1972). Here is the complete source code from Version 6 Unix.
Since I am trying to understand how McIlroy's implementation of TMG worked, I am reading the file
tmgl.s, a translation of
tmgl.t done by TMG. And I am baffled by the following excerpts:
.1=. 1 .2=. 2 .3=.
goto;..2 ..3:null ..2:
.means "location counter", but what is
..means "relocation counter", but what is
(To make things worse, this kind of syntax seems to be only encountered in TMG implementation, not any other source file of Unix V6. And, to exclude the possibility of a corrupt code or phased out syntax, TMG sources actually compile in a Python PDP-11 emulator running Unix V6.)