According to the Oberon-07 language report, the procedure ORD accepts parameters of type CHAR, BOOLEAN and SET. In Project Oberon 2013, however, ORD accepts parameters of any scalar type; even NIL. The procedure Texts.WriteReal, for instance, uses ORD(x) for the real number x. Is this to be considered a language extension? -- August