История изменений
Исправление tp_for_my_bunghole, (текущая версия) :
Я думаю стоит добавить аргументов.
Одно отсутствие модульности уже такой важный аргумент, что дальше даже лень распространятся.
Достаточно посмотреть как реализованы Units во Free Pascal, и подумать почему 20 лет назад это не появилось в C++.
Попробовать скомпилировать KDevelop для C++, и Lazarus с самим компилятором Free Pascal. Совершенно разные ощущения.
Тривиальность парсинга синтаксиса Object Pascal. Один проход, все конструкции однозначны.
C/C++ всегда вызывают непреодолимое желание использовать скриптоту. В Object Pascal принято написание unit'a и моментальная перекомпиляция.
Ассемблерные финкции и ассемблерные вставки в Object Pascal как часть синтаксиса.
Разные конвенции передачи параметров в функции, на уровне ассемблера. В C обратный порядок передачи параметров, это связано с возможностью передачи произвольного числа параметров. В Object Pascal это реализовано на основе типов(array of const), но и все C-шные модификаторы деклараций функций доступны(cdecl, varargs).
Object Pascal just makes sense.
Сравнивать с Haskell невозможно, совсем другой язык, другая парадигма которую не везде можно использовать без проблем.
А библиотеки это дело наживное.
Исходная версия tp_for_my_bunghole, :
Я думаю стоит добавить аргументов.
Одно отсутствие модульности уже такой важный аргумент, что дальше даже лень распространятся.
Достаточно посмотреть как реализованы Units во Free Pascal, и подумать почему 20 лет назад это не появилось в C++.
Попробовать скомпилировать KDevelop для C++, и Lazarus с самим компилятором Free Pascal. Совершенно разные ощущения.
Тривиальность парсинга синтаксиса Object Pascal. Один проход, все конструкции однозначны.
C/C++ всегда вызывают непреодолимое желание использовать скриптоту. В Object Pascal принято написание unit'a и моментальная перекомпиляция.
Ассемблерные финкции и ассемблерные вставки в Object Pascal как часть синтаксиса.
Разные конвенции передачи параметров в функции, на уровне ассемблера. В C обратный порядок передачи параметров, это связано с возможностью передачи произвольного числа параметров. В Object Pascal это реализовано на основе типов(array of const), но и все C-шные модификаторы деклараций функций доступны(cdecl, varargs).
Object Pascal just makes sense.
А сравнивать с Haskell невозможно, совсем другой язык, другая парадигма которую не везде можно использовать без проблем.
А библиотеки это дело наживное.