Хороший пример, но у него есть важный изъян: порождается динамический экземпляр.
Для прикладного программирования это можно стерпеть, но вообще, каждый раз, когда я такое вижу, мне обидно за то, что мы скатываемся к стилю Явы/Шарпов - плодить мусор там, где Оберон, с его полиморфизмом для записей на стеке, позволяет этого не делать...

В вашем случае, чтобы "не плодить", можно сделать модулёк, которая внутри решает эту проблему (подстановку пустого экземпляра записи по имени) через SYSTEM...
Самый простой способ - использовать THISREC.

Если без SYSTEM - то можно сделать такой модулёк, который хранит по одному экземпляру записей по их имени и отдаёт нужную.

Это как дополнение к Вашему примеру. В нагруженных приложениях это важно.