2) Умолчаниями. Мы установили немало умолчаний. Они нам нравятся. Если бы это было не так, мы бы сделали умолчаниями что-нибудь другое. Так что уберите свои грязные руки от наших умолчаний. Не трогайте их. Считайте их предопределенными. "Предопределенные умолчания" - звучит неплохо! Если вы их измените и ваша система зависнет, заткнитесь. См. рис. 1.
3) Компиляторы. Они работают прекрасно. Получают на вход исходные тексты и зачастую генерируют объектные файлы как результат ваших усилий. Вам не нравится результирующий код? Тем хуже для вас! Вы даже можете попытаться делать системные вызовы из него. Во всех случаях, когда это не удается, используйте ассемблер, как это делаем мы. Мы говорили с разработчиками компиляторов и они думают так же, как и мы. Они говорят: "См. рис. 1".
4) Отладчики. Да, у нас есть отладчики, один мы сопровождаем, а другой используем сами. Но в любом случае вы не должны делать ошибки, это всего лишь пустая трата времени. Мы ничего не хотим слышать об отладчиках; нам эта тема неинтересна. См. рис. 1.
5) Ошибка при загрузке. Не обращайте внимания. Зачем наживать себе язву? Вы ведь все равно не захотите передать нам свою машину, чтобы мы разбирались в вашей проблеме, да и мы, вероятно, не сможем разобраться в любом случае. Да, и если что-либо сломается в промежутке между 17:00 и 18:00 или 9:30 и 10:30 или 11:30 и 13:30 или 14:30 и 15:30, то не тратьте ваше время на звонки - нас нет на месте. См. рис. 1.
6) Командный язык. Мы разработали его самостоятельно, он превосходен. Он настолько нам нравится, что мы назвали язык нашим именем. Действительно, мы так счастливы и довольны с ним, что мы создали его один раз для всех наших операционных систем. Мы даже стараемся сохранить командный язык неизменным от версии к версии, хотя иногда мы кардинально пересматриваем его. См. рис. 1.
7) Выполнение программ в реальном времени. Мы этого добились. Кто еще мог сделать такую прекрасную работу? Что, система кажется медлительной со своими 18-ю уровнями приоритетов процессов? Никаких проблем, установите всем процессам приоритет 1. В любом случае реальное время не столь важно, как оно кажется. Мы даже изменили название нашей группы, чтобы избавиться от слов "реальное время". И мы уже давным-давно посоветовали всем нашим пользователям, пытающимся работать в реальном времени, смотреть на рис. 1.
В заключение, засуньте подальше ваше сообщение об ошибках. Любите нашу систему или оставьте ее, но не выражайте свое недовольство.
--------------------------------! _! ! { }! ! | |! ! | |! !. -.!!. -.! !. -!!!!. -.! !!!!;! ! \;! ! \;! !!:! !! |! !| |! !! ! _______________________________! Рис. 1.
From: mobil.perm.su!sae@pulsar.ac.msk.su (Alexander E. Soloviev)
Вот DOS, который построил Майк!
Вот DOS, который построил Майк!
А это ASCII - тайных знаков таблица, Которая в памати где-то хранится В DOS`e, который построил Майк.
А это NC в белосинем мундире, Который когда-то под DOS запустили, Забыли в нем русскую "р" из таблицы, Которая в памати где-то хранится В DOS`e, который построил Майк.
А вот резиденты синицами скачут, Из них хоть один как пить дать напартачит Заклинит NC в белосинем мундире, Который когда-то под DOS запустили, В котором забыли про "р" из таблицы, Которая в памати где-то хранится В DOS`e, который построил Майк.
А это вот файл на винчестер посажен, Который конечно же чем-то заражен, С него резидент-то тот самый и скачет, Который чего-нибудь там напартачит, Который заклинит Коммандер в мундире, Который когда-то под DOS запустили, В котором забыли про "р" из таблицы, Которая в памати где-то хранится В DOS`e, который построил Майк.
А вот AIDSTEST - словно важный министр, Он файл зараженный все хочет почистить, Который к нему на винчестер подсажен, Который конечно же чем-то заражен, С него резидент-то тот самый и скачет, Который чего-нибудь там напартачит, Который заклинит Коммандер в мундире, Который когда-то под DOS запустили, В котором забыли про "р" из таблицы, Которая в памати где-то хранится В DOS`e, который построил Майк.
Вот autoexec (так его называют), Который собой AIDSTEST запускает, Который пыхтит, словно важный министр, Который файл хочет найти и почистить, Который к нему на винчестер подсажен, Который конечно же чем-то заражен, С него резидент-то тот самый и скачет, Который чего-нибудь там напартачит, Который заклинит Коммандер в мундире, Который когда-то под DOS запустили, В котором забыли про "р" из таблицы, Которая в памати где-то хранится В DOS`e, который построил Майк.
А вот command.com, зараженный без меры, Ведь это с него пакостят TSR`ы, Он autoexec под собой выполняет, Который собой AIDSTEST запускает, Который пыхтит, словно важный министр, Который файл хочет найти и почистить, Который к нему на винчестер подсажен, Который конечно же чем-то заражен, С него резидент-то тот самый и скачет, Который чего-нибудь там напартачит, Который заклинит Коммандер в мундире, Который когда-то под DOS запустили, В котором забыли про "р" из таблицы, Которая в памати где-то хранится В DOS`e, который построил Майк.
Цикл АЛГОРИТМИЧЕСКИ НЕРАЗРЕШИМЫЕ ПРОБЛЕМЫ
From: sae@mobil.perm.su (Alexander E. Soloviev)
ПРЕДУПРЕЖДЕНИЕ. Все написанное здесь может абсолютно не совпадать с мнением пишущего.
1. Язычество эпохи алгоритмизации
0101010101
Все языки программирования создавались как самые лучшие - а получались языки ни куда не годные (с точки зрения всех, кроме авторов). Фортран, ПЛ/1, Кобол... Причем, Фортран, как самый негодный, был и самым популярным. И попортил же он крови теоретикам за 25 лет своего процветания - море.
Фортран-таракан, ПЛюшкин/1, Кобол-осел.
Еще и Алгол был, но на нем писали больше диссертации, чем программы... У него было не все в порядке с происхождением: он был в известной степени европейцем. А это уже не совсем Америка.
Правильная программа содержит мало ошибок.
Но как определить, что такое хорошо, в столь деликатной сфере, как программирование? Американцы попытались это сделать по инициативе и под руководством военных. В результате, дорога к Аде оказалась устлана добрыми намерениями и трупиками человечков (соломенного, деревянного, оловянного, железного, песочного, каменного и других). И в 80-ом году была об'явлена победа! Но Пиррова, в смысле сложности. Поэтому внедрять пришлось не без угроз. Ада - это прошлое и будущее процедурного программирования. Это вершина и апофеоз, но в форме тупика.
Язык - это то, что отличает программера от человека.
А ассемблеры и не думали капитулировать. За их изощренной (извращенной) вседозволенностью стояли умелые руки и крепкие головы настоящих мужчин-программистов.
- Ну и тип! - Нет ли на него данных? - Инкапсулировать таких надо! - Без права рандеву!
Для них Ада, что взбесившийся слон для муравья-трудоголика.
Порочная практика критерий истины.
Но гибель обычно приходит с обратной стороны. Вот, если читать теоретиков: Дейкстру, Хоара, да и того же Бэкуса (отрекшегося от своего родного Фортрана), а потом делать все наоборот, то получишь язык Си. Без особого шума и военных Деннис Ритчи язык Си и получил, собрав все мыслимые, а главное - немыслимые, безобразия воедино. Получилось здорово.
Порочная истина стимул для практики.
После чего вопрос встал ребром. Поскольку язык этот проигнорировать, как противоречащий высоким критериям программистской морали, было никак не возможно - проигнорировали теоретиков. И оказалось, что без них в программировании лучше. Но большинство вообще разницы не заметило, поскольку не подозревало, что в программировании может быть теория, методология, технология и вообще, что в программировании может быть что-либо, кроме программирования. А перед лицом Си не только Фортран, но и ассемблеры вынуждениы были с боями оставлять чип за чипом...
А все-таки она ВИРТится!
Рядом, но высоко, стоял Паскаль с учительской указкой. Он сеял разумное, доброе, вечное. Призывал к здравому смыслу. Но народу еще со времен Фортрана было наплевать на формализацию семантики. (Модула-2 вообще "от кутюр" , а шабашить лучше в телогрейке). Но предприимчивый ученик Борланд уже подложил ему кнопку на стул и на парте нарисовал что-то графическое...