После прочтения документа
http://www.oberon.ethz.ch/oreport.html возникло несколько вопросов.
1. Что же все-таки делать с процедурами, которые возвращают record или array. Вроде, компилятор на такие не ругается, но непонятно, как их потом использовать. Кроме того, в пункте 10.1 говорится, что нельзя предать в качестве формального параметра процедуру, которая возвращает массив или рекорд, хотя компилятор опять-таки не ругается на такую конструкцию.
2. Действительно ли нет операции взятия указателя (как * в паскале). То есть, единственный способ дать указателю значение это или new или присваивание другой переменной-указателя?
Скачал WinOberon на том же сайте и пробовал все эти конструкции в нем.