Здравствуйте, Khimik, Вы писали:
K> R>Методы у записей появилсиь задолго до XE, в 2006, кажется. Записи с наследованием называются object, но это легаси, хотя и рабочее.
K> А чем object-ы отличаются от record-ов? зачем было вводить инкапсуляцию у рекордов, если она уже есть у obtect-ов?
У object могут быть виртуальные методы, у записей нет. Записи поддерживают перегрузку операторов, кастомную инициализацию/финализацию, object нет (во Free Pascal ожно перегрузить операторы и для них). Object — это отголосок ООП из Turbo Pascal. В Delphi изменили объектную модель, он стала ссылочной (плюс изменился принцип конструирования объектов), поэтому object перестали развиваться. Ну и одновременно с этим объявили object legacy, а после стали развивать записи.
K> K>> 5) Метапрограммирование, макросы – есть сейчас что-то такое?
K> R>Во Free Pascal есть.
K> Т.е. у Lazarus? Значит если в Lazarus допилят отдалку — будет круто и лучше Delphi?
Он уже давно лучше Delphi. Во Free Pascal куча клевых штук, которых в Delphi нет.