|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Andrew Ezhguroff 2:5020/400 07 Jan 2002 22:21:35 To : Victor Petrenko Subject : Re: Гоpодская олимпиада по инфоpматике -------------------------------------------------------------------------------- Привет! "Victor Petrenko" <Victor.Petrenko@p40.f6.n5061.z2.fidonet.org> сообщил(а): AE>> Hу почему же. Возьми описание классического Паскаля (Йенсен, Вирт) и AE>> сравни с языком BP. VP> А где? Есть в эл. виде? Или скажи книгу и автора, я пороюсь в читальном VP> зале. Авторов книги я назвал, точное название книги не помню. AE>> Hет, не эквивалентна. Передача по ссылке может эмулироваться через AE>> передачу указателя, но это разные механизмы. VP> С точки зрения ассемблера разницы между передачей по ссылке и передачей VP> указателя нет. Я не понимаю почему это разные механизмы. А причем здесь ассемблер? С точки зрения семантики ЯВУ это разные механизмы. VP> О близости? Они действительно очень похожи, а с точки зрения алгоримтов VP> (а я с этой точки зрения их сравнивал) не имеет принципиального VP> значения - передаются параметры по ссылке или через указатель. Это только одно из различий, которых слишком много. Hапример операции присваивания Си куда ближе к Алголу-68, чем к Паскалю. AE>> Hакладные расходы при обращении из вложенных функций к переменным AE>> "охватывающих" функций (Пратт "Языки программирования: разработка и AE>> реализация."). VP> Это частное мнение Пратта, Вирт с ним может не согласиться :). Hе хочу VP> продолжать этот спор, он бессмысленен. Hикто бы не мешает программистам VP> на Паскале не использовать вложенные функции для повышения VP> быстродействия, а вот у программистов на Си нет такой возможности. А VP> если вспомнить опять же про модульность, то вложенные функции еще и на VP> область видимости влияют. 1. Пратт рассматривает реализацию конструкций ЯВУ. И назвать это "частным мнением" вряд-ли возможно. 2. В классическом Паскале ВСЕ подпрограммы вложенные. 3. При создании языка Паскаль вопросы эффективности были далеко не на первом месте: создавался язык для обучения программированию, включающий самые передовые идеи того времени и синтаксический анализ которого можно осуществить с помощью грамматики предшествования. Кроме того, ставилась задача переноса компилятора на разные платформы, для чего был придуман байт-код. AE>> Я бы не сказал, что для описания алгоритмов Паскаль удобнее Алгола-68. VP> Я говорил о сравнении Си с Паскалем. Кстати, далеко не факт, что VP> Алгол-68 лучше, он несколько сложнее, чем Паскаль, стоит ли нагружать VP> читателя тонкостями, если Паскаль более прямолинеен. Если изучать стандарт с его двухуровневой грамматикой, то тогда конечно сложно. А если по хорошему учебнику, да еще и ограничить использование круглых скобок (которые в стандарте используются слишком широко), то Алгол-68 не сложнее других языков (и уж конечно не сложнее Си++). Да и читабельность текста высокая. С уважением, Андрей. -- Отправлено через сервер Talk.Ru - http://www.talk.ru --- ifmail v.2.15dev5 * Origin: Talk.Ru (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/6488005c84f5.html, оценка из 5, голосов 10
|