> -- Цитата:
> Этот вопрос следует расширить до:2. Почему нет конструкторов массивов?3. Почему нет конструкторов записей?

В JPI-Modula-2 конструкторы были, приятно было с ними работать.

> -- Цитата:
> 4. Почему результат функции может быть только базового типа?
Затем, что бы код нормальный генерился.

Ответ:"особенность перекочевала в него из других оберонов" - не принимаю.

Вот гляньте, на эти извращения:
## Код:
```
PROCEDURE TableUS*(): LONGINT;
CODE {SYSTEM.i386}
   CALL L1
L1:
   POP EAX
   ADD EAX,8
   POP EBP
   RET
      (* alphabet *)
   DB 1EX, "a", "A", 4X,   30X, "b", "B", 4X,   2EX, "c", "C", 4X,   20X, "d", "D", 4X
   DB 12X, "e", "E", 4X,   21X, "f", "F", 4X,   22X, "g", "G", 4X,   23X, "h", "H", 4X
   DB 17X, "i", "I", 4X,   24X, "j", "J", 4X,   25X, "k", "K", 4X,   26X, "l", "L", 4X
   DB 32X, "m", "M", 4X,   31X, "n", "N", 4X,   18X, "o", "O", 4X,   19X, "p", "P", 4X
   DB 10X, "q", "Q", 4X,   13X, "r", "R", 4X,   1FX, "s", "S", 4X,   14X, "t", "T", 4X
   DB 16X, "u", "U", 4X,   2FX, "v", "V", 4X,   11X, "w", "W", 4X,   2DX, "x", "X", 4X
   DB 15X, "y", "Y", 4X,   2CX, "z", "Z", 4X
```
