Можно было, конечно, обойтись без этого и использовать TObject или Pointer, но это сводит на нет многие преимущества типизации (не то чтобы я это знал тогда, но чуствовал).
Аналогично. Всё время приводить типы… ощущение неправильности было.
Я, нпр., использую Delphi 7 и не страдаю от отсутствия многих сомнительных ИМХО методологий.
Вы же понимаете, что такого типа «аргументы» — не аргументы? (Даже если бы вы использовали и страдали — тогда импликация направлена уже в ту сторону, но и этого мало…) Зачем тогда такое писать?
Когда я ещё писал на D7, я постоянно натыкался на отсутствие в VCL даже если маленьких, но нужных деталей: то чтобы управлять значком в трее, надо пользоваться WinAPI (ладно, написал класс или скачал чью-то поделку, но почему Borland сами это не сделали вовремя?), кроссплатформенные
ShowDialog выглядели порой странновато (то кнопки называются
Да и
Нет, то почему-то
Yes и
No). Механизма локализации опять же там, вроде не было. Уникода не было (здесь я повторяю, потому что это
очень плохо). Вся вместе эта беднота VCL давила.
Это просто описание. Кому хватает D7, тех, разумеется, не надо куда-то утягивать в неизвестность. А кому-то хватает и бейсиков (VB6 включительно; эта штука ещё беднее Delphi была, кошмар. Все версии VB.NET исключаем, хотя лично мне грамматически этот язык не нравится, несмотря на эквивалентность C#).