cf Michael Spivey, http://spivey.oriel.ox.ac.uk/corner/Oxford_Oberon-2_compiler