← Georg Nees, 1969 Chapter ② — Schachtelung

Dissertation 1969

ALGOL 60

'BEGIN' 'COMMENT' SCHACHTELUNG.,
'REAL' LI, RE, UN, OB, H.,
H.=.5., OPEN(0,0).,
LI.=-130., RE.=130.,
UN.=-90., OB.=90.,
ANF..
LEER(0,OB)., LINE(LI,OB).,
LINE(LI,UN)., LINE(RE,UN).,
LINE(RE,OB)., LINE(0,OB).,
LINE(LI,0)., LINE(0,UN).,
LINE(RE,0)., LINE(0,OB).,
LI.=LI*H., RE.=RE*H.,
UN.=UN*H., OB.=OB*H.,
'IF' RE 'GREATER' 1.0 'THEN' 'GOTO' ANF.,
CLOSE
'END' SCHACHTELUNG.,

This page · drawing kernel

JavaScript

let LI = -130, RE = 130, UN = -90, OB = 90;
const H = 0.5;

do {
  LEER(0, OB);
  LINE(LI, OB);
  LINE(LI, UN); LINE(RE, UN);
  LINE(RE, OB); LINE(0, OB);
  LINE(LI, 0);  LINE(0, UN);
  LINE(RE, 0);  LINE(0, OB);
  LI *= H; RE *= H;
  UN *= H; OB *= H;
} while (RE > 1.0);

Unlike Bogenraute, this process has no counted loop, only a label (ANF) and a branch. Each pass draws a rectangle (corners LI/RE/UN/OB) and the diamond joining its four midpoints — then all four extents are halved with H = 0.5. The loop does not stop after a fixed number of turns; it stops when half-width RE has shrunk to 1.0 or below — convergence in the literal, mathematical sense.

© Works of Georg Nees: heirs Eckhard Nees & Sandra Nees · Website © 2026 Eckhard Nees