The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Опубликован четвёртый том общедоступной книги Программирован..."
Отправлено Ordu, 28-Мрт-20 23:11 
>>> Рассмотрены концептуальные различия между Паскалем и Си.
>> Лолшто? Какие там концептуальные различия?
> Строки.

Нну, это хрен знает... Строки -- это мелкий и не очень существенный нюанс, причём даже не совсем нюанс языка, это можно рассматривать как особенность стандартной библиотеки. Хотя в паскале строки запилены на уровне языка со сборкой мусора.

С другой стороны, это и есть пример единственного концептуального отличия паскаля от C: в C есть базовые простые блоки, предназначенные для многократного использования во многих разных ситуациях, для того, чтобы на основе этих блоков строить всё остальное, в том числе и строки, и, например, printf. В pascal'е же, если что-то не строится хорошо на базовых простых блоках, в язык засовывается новый ad hoc блок, и получаются строки со сборкой мусора, и writeln, который вроде как макрос, но макросов в языке нет. И, соответственно, если мне чутка не нравится writeln, и я хочу свой, то я не напишу этот свой никак, разве что патчить компилятор или писать препроцессор к нему. В C же, если мне не хватает в printf спецификаторов для вывода массивов, то я могу запилить их туда, написав printf заново.

Когда Ритчи подумал, что надо как-то сделать удобный вывод в консоль, он запилил в язык эллипсис, и дал возможность написать printf. Когда Вирт подумал, что надо как-то сделать удобный вывод в консоль, он отказался от эллипсиса потому как это плохо, он отказался от макросов, потому как это ещё хуже, и вместо этого он запилил ad hoc костыль -- writeln.

> А так-то и бейсик с си -- императивные языки программирования.

С бейсиком сложно сравнивать, потому что бейсиков много. Если тот бейсик с номерами строк, который на БК-0011, то простите он до уровня C не дотягивает вообще никак. Он больше на ассемблер похож. Если же что-то типа Visual Basic, то там уже во все поля ООП и это опять же другой язык. Был ещё Turbo Basic, его может и можно поставить в один ряд с С -- но я не видел его ни разу.

C++ тоже императивный язык программирования, но они очень разные с C.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру