Hello, Dimmy Timchenko! You wrote in conference fido7.ru.embedded to Dmitry Orlov on Sat, 22 Oct 2005 12:14:26
+0400:
DT>>> Hу, стандартный язык - это, пожалуй, только Ада... ;) DT>>> Впрочем, C - тоже стандарт ad hoc de facto. :)
DO>> Hа Паскаль тоже есть стандарт, другое дело, что Борланд его DO>> не придерживается ни разу.
DT> Стандартный Паскаль - язык для обучения, для практической DT> работы малопригодный.
Строго говоря, ТР - тоже.
DO>>>> Потому что очень глупые, оптимизаций и изысками в DO>>>> кодогенерации себя не утруждающие.
DT>>> Для PC это не так важно.
DO>> Достаточно важно. Именно от этого в программах на ТР столько DO>> встроенного и невстроенного асма.
DT> Да нет, не потому. А от времён 386/486.
Поясни что ты имеешь в виду? Причем тут 386, тем более, что первый ТР вообще под СР/М был...
DT>>> Тут важнее ООП-щиной не увлекаться.
DO>> А она-то чем тебе не угодила? Сама по себе на х86 она DO>> большого оверхеда не дает.
DT> Деревья виртуальных классов, как я понял, линкуются целиком - DT> потому как ссылки разрешаются во время выполнения.
И что?
DO>>>> Да и язык более простой, чем С.
DT>>> Правильно, более простой, понятный и продуманный.
DO>> Hет, просто более простой и менее выразительный.
DT> Hу и чего на паскале нельзя выразить, что можно на C? :) По
Многое на самом деле. Те же операторы ++, += - они яснее выражают что я хочу сделать, чем паскалевские эквиваленты. Стандартная адресная арифметика, которая на паскале заменяется форменным хакерством, причем реально используется. Та же невозможность описать на паскале функцию с переменным числом параметров, что опять же обходится, но опять же некрасиво и полухакерски.
DT> выразительности они где-то близки: в одном есть, например, DT> операции присваивания и пред/постинкремент, зато в другом - DT> параметры-ссылки, строки, диапазоны, сеты, with, модули. :)
И еще много всякой непонятно зачем притянутьй в язык мути.
DT> А вот зато по читаемости Паскаль далеко превосходит C.
Вопрос исключительно стиля и привычки.
DO>> В продуманный язык не суют ввод-вывод, как языковое средство. DO>> В продуманный язык не суют два механизма работы с DO>> динамической памятью. И многие другие вещи.
DT> Здесь они с C примерно в равных условиях. В продуманный язык DT> не суют такое уродство, как printf.
А его и нет в языке - это библиотека, которой ты можешь пользоваться, а можешь и свою написать, в отличие от жестко привязанного к stdout Write, который ты никак изменить не в силах и если у тебя формат вывода должен задаваться динамически, возможно извне, прийдется ручками писать аналог printf, потому что write - это не процедура, это макрос, раскручиваемый компилятором во время компилирования. Причем управление форматом вывода куда более уродское и менее гибкое, чем в [s]printf.
DT> Да и указатели не суют затычкой во все дырки. :)
А то в ТР не так...
dima
formatting link