> -- Иван Денисов писал(а):
> Хорошо, что есть движение и есть пользователи. Однако, моё мнение, что Вирт сделал большой шаг к Оберону-07. И это как раз большое развитие.Вирт шагает не вперед или назад, он всегда шагает в сторону. На каждый чих свой ЯП, просто такой подход, но возводить его в абсолют не стоит. Просто чихов много, и все не осилить, загнуться можно. Что с Оберонами и случилось. потому что, когда мы шагаем в сторону, это значит, что мы уступаем дорогу.
> -- Иван Денисов писал(а):
> А то, что кто-то добавил какие-то фичи из языка 30-летней давности в свою систему, когда в новых системах от этих фич уже отказываются, или когда добавляются фичи в систему по первому требованию редких пользователей — это не развитие...
О чём это ты Иван? нужно разобраться в контексте обсуждения. Изначально Активный Оберон это расширение классического Оберона с фичами из ОбжектОберон, и выглядел он как-то так:
## Код:
```
TYPE  
    ObjectDesc = RECORD  
        VAR  
            local, local2: LocalData; 

 
        PROCEDURE P;  
        BEGIN  local := local2      (*copy the fields*) 
        END P; 

       
        PROCEDURE Q(local: LocalData); 
        BEGIN  SELF.local := local   (*assign the parameter to the field local*) 
       
    BEGIN 
        (*object activity*) 
    END ObjectDesc;
```

То есть, у записей были методы, они описывались внутри записи, ислова OBJECT там не было.
Потом OBJECT добавили, но внутри  это были те же самые записи, только в куче. Причина введения такого специализированного типа очевидна - активный объект может быть только
в куче, потому что если мы разместим его на стеке,  то может случиться бум, потому что стек может схлопнуться в любое время, уничтожая объект/запись, а вот связанная с объектом активность никуда не денется, в общем это крах системы.
Так что здесь все логично.
Почему убрали методы из записей, я не знаю. Повторяю, объекты это теже записи только в профиль.
так что Феликс только вернул методы на место и для этого понадобилось лишь несколько строк в компиляторе.
Ну за компанию он добавил и синтаксис О2. Видимо, чтобы упростить портирование, а может хотели в стиле Go сделать псевдометоды для неструктурных типов.
Вернул Феликс методы в записи не по требованию, они ему и ко, тоже нужны были.
Просто интересы совпали.
Ну а то, что Вирт удаляет всё и вся это не развитие, я уже гоыорил - это шаг в сторону, и чуток назад. Для учебных целей это, возможно, неплохо, упрощение, но там уже идет примитивизация, Вирт нарушил смысл эпиграфа, сделав просто примитивный яп, которым пользоваться совершенно не удобно.