Цитаты Алан Перлис
Афоризмы, высказывания и мысли.

Редактирование — это выражение того же, но другими словами.

Если преподаватель настаивает на том, что вычислительная наука — это X, а не Y, посочувствуйте его ученикам.

Не стоит писать программу без цикла и структурированной переменной.

Появление ЭВМ домах не изменит ни один из них, но может возродить салуны.

Если вы можете представить себе общество, где лакеями будут роботы, вы можете представить все, что угодно.

Когда мы пишем программы, которые «обучают», мы — обучаем, а они- нет.

Хотя китайцы должны были бы обожать APL, они вкладывают деньги в фортран.

Обучение детей программированию противоречит современной теории обучения. Разве интересно составлять планы, овладевать дисциплиной в организациии мышления, уделять внимание деталям и учиться быть самокритичным?

Эвм приводит в замешательство вычислительную науку.

В программировании инварианты эфемерны.

В программировании средняя наработка на отказ постоянно уменьшается.

В программировании превращение очевидного в полезное — это точное определение слова «разочарование».

Если бы мы писали программы с детства, то с годами, возможно, научились бы их читать.

Проще написать неправильную программу, чем понять правильную.

Работу программистов следует оценивать не по их изобретательности и логике, а по полноте анализа каждой ситуации.

Продолжительный контакт с машиной превращает математиков в клерков, и наоборот.

Как сказал бы Уилл Роджерс: «В природе нет такой вещи, как свободная переменная».

Споры бушуют вокруг того, что такое рL/1 — двугорбый или одногорбый верблюд.

Машина не виновата в том, что уравнения максвелла не подходят для проектирования электромотора.

Адекватная само раскрутка — явное противоречие.

Для систем аналогом пластической операции является введение в управляюший граф ребра, которое создает цикл, а не просто еще одну вершину.

Софтвер находится в постоянном напряжении. Поскольку он символичен, его можно постоянно совершенствовать, но и произвольно изменять.

Если при объяснении вашей программы слушатель начинает кивать головой, его пора будить.

Единственная конструктивная теория, связывающая неврологию и психологию, возникает из исследований софтвера.

Часто средства оправдывают цели: Цели порождают метод, а метод выживает, даже когда разрушаются структуры, бывшие ранее целью.

Ваять можно научить каждого, но тогда пришлось бы учить Микеланджело, как не делать этого. То же самое — с великими программистами.

Нельзя передать сложность, а только знание о ней.

Мы вот-вот сможем сказать: «Сегодня наша программа доказала теорему ферма».

Афоризмы возвращают глубокое семантической значение из базы данных, которая представляет собой процедуру.

Года работы над искусственным интеллектом достаточно, чтобы заставить поверить в бога.

Не имейте хороших идей, если не хотите отвечать за них.

Возможно ли, что программное обеспечение не похоже ни на что другое; что оно создано для того, чтобы от него отказались со временем;что все дело в том, чтобы оно всегда оставалось для нас мыльным пузырем?

Если программа манипулирует большим количеством данных, она делает это лишь несколькими способами.

Адаптировать старые программы к новым машинам обычно означает заставить новые машины работать по-старому.

У нас есть мини- и микро-эвм. В какую семантическую нишу попала бы пико-эвм?

Машины скорее обнаруживают наличие беспорядка, чем наводят порядок.

Не стоит изучать язык, который не меняет вашего представления о программировании.

Там, где есть модульность, возможно непонимание: Сокрытие информации предполагает необходимость проверки связи.

Все нужно проектировать сверху вниз, за исключением фундамента, с которого нужно начинать.

Цель Fетсн-ехесUте вычислений — эмуляция наших синтетических способностей, а не понимание аналитических.

Когда изучаешь какой-либо вопрос, считаешь, что знаешь его;когда можешь писать о нем, становишься уверенней в своих знаниях;уверенность возрастает, когда можешь научить этому кого-нибудь другого; и совершенно уверен, когда начинаешь программировать.

Когда кто-то говорит: «Мне нужен язык программирования, в котором достаточно только сказать, что мне нужно сделать», — дайте ему леденец.

Кибернетический обмен между человеком, машиной и алгоритмом подобен игре в «музыкальные стулья»: Неистовый поиск равновесия всегда оставляет одного из трех неловко стоять.

Чтобы понять программу, необходимо отождествить себя и с машиной, и с программой.

Нельзя научиться программированию с помощью ручного калькулятора, но можно забыть арифметику.

Подумайте, сколько психических сил потрачено на поиски коренного различия между «алгоритмом» и «программой».

В хорошей системе не может быть слабого языка команд.

Каждая программа является частью другой программы и редко соответствует ей.

Язык программирования имеет низкий уровень, если в программах приходится уделять внимание несущественному.

Мы всегда хотим сказать в своих программах что-то такое, что на всех известных языках можно сказать только плохо.

Самая важная машина та, что «бушует» у нас в голове и все время ищет нужный ей внешний эмулятор. Стандартизация существующих машин была бы катастрофой, и потому она, вероятно, не произойдет.

Простота только мешает поиску недостижимого. Если существуют афоризмы, должны быть и метаафоризмы.

Функции задерживают связь, структуры данных стимулируют связь. Мораль: Структурируйте данные как можно позднее в процессе программирования.

ЭВМ — это загрязнитель в его чистейшем проявлении: Ее отходы неотличимы от пищи, которую она производит.

Большинство людей находят концепцию программирования очевидной, но само программирование невозможным.

В программных системах зачастую «кто рано встает, того удача ждет».

В программировании, как и везде, ошибаться — значит рождаться заново.

Интерфейсы сохраняют порядок вещей, но не ускоряют рост — функции же ускоряют.

Перспективность программиста можно оценить, узнав его мнение о жизнеспособности фортрана.

Чисто прикладные языки плохо применимы. (Игра слов аррLIсатIVе иаррLIсавLе).

Оптимизация препятствует эволюции.

Всякий раз, когда два программиста встречаются для критического анализа своих программ, они оба молчат.

Мысленно человек может только воспроизвести сложную информацию. Движение, или течение, или изменение перспективы важнее, чем статическое изображение, каким бы красивым оно не было.

Трудно выделить смысл из строк, но это единственная «монета» связи, на которую мы можем рассчитывать.

В конечном счете каждая программа устаревает, как и рококо, а потом и вовсе умирает.

Когда мы поймем машинные системы баз знаний, все будет, как и прежде, с той лишь разницей, что кончики пальцев будут обожжены.

Подумать только! С помощью сверхбольших интегральных схем мы можем упаковать 100 «эниаков» в 1 кв. См.

Афоризмы пропускают подробности и выделяют главное: Это превосходная документация высокого уровня.

Системы состоят из подсистем, подсистемы — из под подсистем и так до бесконечности — именно поэтому мы проектируем снизу вверх.

Использование программы для доказательства теоремы о четырех красках не изменит математики. Оно просто покажет, что задача, которая оставалась нерешенной в течении столетия, возможно, не так уж важна для математики.

Мы обманываем себя, думая, что отношение процедур к данным в активной системе базы данных можно сделать произвольно малым или даже сохранить малым.

Если ваша машина говорит по-английски, ее, вероятно, сделали в Японии.

Афоризмы — это макросы, поскольку они выполняются в ходе чтения.

Девиз исследовательской лаборатории: «О том, над чем мы работаем сегодня, другие подумают только завтра».

Простота не предшествует сложности, а вытекает из нее.

В программировании трудно найти правильную единицу времени для измерения прогресса. Некоторые соборы строились веками. Можно ли вообразить грандиозность и размер программы, на которую затратили столько времени?

Так много хороших идей исчезает бесследно, попав в пучину семантики.

Никогда не кончатся объекты программирования, пока у нас под рукой есть хотя бы одна программа.

Легко сделать что-то переменным. Хитрость в том, чтобы измерять продолжительность постоянства.

Лисп-программисту известна ценность всего, но неизвестна цена чего бы то ни было.

Обработать ошибку легко: Постарайтесь исправить программу. Удачный запуск тоже легко обработать: Вы решили не ту задачу. Постарайтесь исправить и эту ошибку.

Синтаксический сахар вызывает рак точек с запятой.

Не путайте: Машины обрабатывают числа, а не символы. Мы измеряем свое понимание (и контроль) степенью арифметизации деятельности.

Программы без ошибок можно написать двумя способами, но работает- третий.

Реальная графика: Для описания картинки необходимо 10к слов. Но едва ли можно описать какое-либо множество из 10к слов с помощью картинок.

Афоризмы параметризуют нимбы святости.

Благодаря своей жизненности программирование всегда испытывает отчаянную потребность в новых штампах: Банальность успокаивает нервы.

Не создатели, а пользователи должны параметризовать процедуры.

Рекурсия — основа программирования, поскольку она сокращает время написания программы.

Доказательство ценности системы — в ее существовании.

Как только вы поняли, как писать программу, заставьте сделать это кого-нибудь другого.

Для машин естественные языки не естественны.

Все, что мы делаем в программировании — это частный случай чего-то более общего, и зачастую мы осознаем это чересчур быстро.

Если двое пишут в точности одну и ту же программу, нужно преобразовать каждую в микрокод, и тогда они, конечно, не будут одинаковыми.

Для дилетанта лучшим пособием по программированию служит «Алиса в стране чудес» — только потому, что для него это лучшее пособие по любому предмету.

Почему распалась римская империя? Как по-латыни автоматизация конторских работ?

Некоторые языки программирования допускают изменения, но сопротивляются прогрессу.

То, что для одного человека константа, для другого — переменная.

Иногда мне кажется, что единственным универсумом в программировании является цикл.

Остерегайтесь бочки меда с ложкой дегтя тьюринга, где все возможно, но все интересное слишком сложно.

Структурированное программирование подтверждает закон исключенного третьего.

Нельзя перейти от неформального к формальному с помощью формальных средств.

Афоризмы — это интерфейсы, по которым передается оценка и понимание.

Не слабости, а достоинства языка определяют направления его изменений. Увы, язык никогда не сможет избавиться от своего эмбрионального мешка.

Как и каламбур, программирование — это игра слов

Легче изменить спецификацию, чтобы она соответствовала программе, но не наоборот.

Программирование заставило дерево зацвести.

Одиннадцатая заповедь гласит: «Вычисляй» или «не вычисляй» — я уже не помню.

В симбиозе человек-машина приспосабливаться должен человек;машины этого не могут.

Если в вашей процедуре 10 параметров, вероятно, вы что-то упускаете.

Глупцы игнорируют сложность. Прагматики терпят ее. Некоторые могут избегать ее. Гении ее устраняют.

У каждой программы (по крайней мере) два назначения: Что она должна делать и чего не должна.

Строка — это застывшая структура данных, и повсюду, куда она передается, происходит значительное дублирование процесса. Это идеальное средство для сокрытия информации.

Программирование — это неестественный процесс.

Лучше, чтобы в 100 функциях использовалась одна структура данных, чем в 10 функциях — 10 структур.

Афоризмы кристаллизуют несоответствия.

Какая разница между машиной тьюринга и современной ЭВМ? Такая же, как между восхождением Хиллари на эверест и открытием отеля «Хилтон» на его вершине.

Цитаты Алан Перлис на folk-tale.ru

Читайте также по теме :

Александр Поуп
Слова подобны листьям: дерево, производящее их очень много, приносит очень мало плодов. Т...

Александр Сергеевич Пушкин
Дела давно минувших дней, Преданья старины глубокой! К беде неопытность ведет. Пир во вр...