Иван Денисов писал(а):
Константин, вы перегибаете палку.
Ну это не в первый раз. К примеру, в теме про целочисленное деление на меня тоже обрушилось общественное негодование и даже было сообщение о
дезинформации. Прикажете пожертвовать точностью ради общественного одобрения?
Повторю, "Си - переносимый ассемблер" - это манипуляция, иными словами - "это опасная аналогия, которая может привести к неверным выводам", и что характерно, приводит.
Цитата:
В первом сообщении Валеры вполне понятно что он имел в виду
Да и из сообщения Сергея Волкова была понятна суть метафоры, и в своём 1-м сообщении я огласил суть кривизны этой аналогии. Про аналогию Си, как ассемблера для UNIX - это тоже обычное натягивание совы на глобус. Тут уровень мышления - раз мы знаем, что ОС пишется на языке ассемблера, а UNIX была переписана на Си(сначала она была переписана на Би), то Си(или Би) - это типа ассемблер, тока переносимый. Но в том, что ОС можно писать на ЯВУ нет ничего удивительного. ОС Multics, являющейся прямой вдохновительницой UNIX, была написана на выскоуровневом языке PL/I, но даже она не была в этом 1-й. Предположу, что сами авторы UNIX не пользовались ассемблерной аналогией хотя бы поэтому.
Более того, я привёл ссылку на доклад, в котором затрагивается работа Кена Томпсона, связанная с ассемблером NS3200, который был доработан до переносимости и в конечном итоге был положен в основу ассемблера Go. Идея этой работы понятна? Правильный ли в ней ассемблер? Точно такая ли там переносимость как я понимаю или точно не такая? Возможна ли применимость этих результатов к другим ассемблерам или это неповторимый результат?
Если не получается мыслить абстрактно, то, может, хотя бы посмотреть на разные работы? Их ещё много.
Цитата:
И непонятно, зачем дальше гнуть свою линию, если это явно никому не надо
Мне задали вопрос по одному из пунктов, я ответил. Хотя мы в теме по Радио Оберон, но слова нужны не только для того, чтобы просто потрепаться. В первую очередь это важный инструмент, от корректности которого многое зависит.
Цитата:
у трансляторов типа Офронта или Восток на выходе — Си
Я уже много раз писал, что транслятор проекта Восток не является транслятором в Си. Это многоцелевой транслятор, на данный момент поддерживающий 3-и почти равноправных выходных языка, каждый из которых позволяет получить рабочую версию транслятора. Как минимум 2-а языка позволяют получить желаемый многими машинный код. Возможность трансляции обеспечивается тем, что все эти языки алгоритмически полны (полны по Тьюрингу), но ни один из ныне поддерживаемых не является языком ассемблера. Я бы не стал добавлять другие выходные языки, если бы мыслил аналогией "переносимого ассемблера".
Цитата:
У вас эта метафора явно какие-то другие ассоциации вызывает. Это и не хорошо и не плохо... но лучше, когда взаимопонимание
Плохо, коллега, плохо. От того, насколько корректно мы употребляем слова, зависит то, насколько хорошо мы понимаем предмет и, следовательно, насколько хорошо можем использовать и менять действительность себе на пользу.