fat_yankey: (Default)
[personal profile] fat_yankey
The purpose of a program is informal, often unstated, criterion and the transition from informal to formal objects must forever be unformalized, lest we caught in the paradox of assuming the formalization of an object we know only informally.

Social processes and proofs of theorems and programs
DeMillo, Lipton, Perils
Не проси богов ни о чем, рискуешь получить просимое.

Древние греки иллюстрировали эту максиму историями Мидаса и Титона. Первый попросил Диониса, чтобы всё, к чему он прикоснётся, обращалось в золото. И это ему было даровано. Как выяснилось на тестовом прогоне, в обществе где все едят руками такой дар может привести к смерти от истощения. Не говоря уже о сложностях в социальной жизни - ни поздороваться, ни обнять... За второго попросила любовница. Ему посчастливилось любиться с Эос, богиней утренней зари. Та и замолвила словечко Зевсу. Попросила для своего любовника вечной жизни. И это ему было даровано. Как выяснилось на тестовом прогоне, вечная жизнь без вечной молодости штука не очень приятная. Прожив заметно больше отмеренного человеку срока, Титон страдал от всех старческих болезней, включая слабоумие, не мог пошевелить ни рукой, ни ногой, ни, к полному расстройству Эос, более важными для любовника органами. Существует версия, что он постепенно ссохся в цикаду, видимо растворив внутренний скелет и нарастив внешний. Если версия верна, то среди этих мух-переростков есть одна бессмертная.

Античность закончилась, греческих богов дарующих человеку просимое в христианской Европе сменил дьявол. Европейские фольклор и литература во множестве содержат сюжеты сделки с дьяволом, смертный контрагент которых получал именно то, о чём просил. Впрочем, были и сюжеты в которых в формальную ловушку попадал дьявол, а не человек. Наиболее известный, видимо, это сюжет "приходи завтра" ("а чего ты сегодня пришёл, разве сегодня - завтра?").

Все сюжеты объединяет то, что герой комично или трагично проваливается в зазор между формальным (то что попрошено) и неформальным (то что хотелось).

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

В конце концов, компьютер всегда делает именно то, о чём ты его попросил.
Page 1 of 4 << [1] [2] [3] [4] >>
From: [identity profile] ok-66.livejournal.com
Основные отличия
1. Комп туп, но не злонамерен.
2. С компом можно пробовать много раз.

Date: 2015-05-03 06:16 am (UTC)
From: [identity profile] semonsemenich.livejournal.com
Замечательно. К теме формального подхода к исполнению желаний ( столь часто встречающегося в мистической литературе), мне кажется, тесно примыкает тема формального исполнения предсказаний и пророчеств ("Когда придет твой смертный, час Как твой Бирнамский лес"), где героя тоже ожидает облом.
Однако коллега выше верно подметил: компьютер специально не изыскивает бреши в формулировках. Он предсказуем, и правила его поведения зарене оговорены.

Date: 2015-05-03 07:33 am (UTC)
From: [identity profile] livohbatez.livejournal.com
http://www.ega-math.narod.ru/Quant/Porges.htm

"Но никто ещё не мог найти два куба, которые при сложении тоже давали бы куб или более высокие степени, которые приводили бы к аналогичному результату, — по-видимому, их просто нет. И всё же, — торжествующе закончил он, — до сих пор не доказано, что таких чисел не существует!"

Date: 2015-05-03 08:18 am (UTC)
From: [identity profile] aintlion.livejournal.com
Это с точки зрения программиста, оговорены и заранее известны.А с точки зрения пользовaтеля, отнюдь.
Edited Date: 2015-05-03 08:19 am (UTC)

Date: 2015-05-03 08:41 am (UTC)
From: [identity profile] semonsemenich.livejournal.com
Не очень понял тонкость.. Но не суть. Главное, что коллега ok_66 прав: диавол изначально заточен на кидалово. Трудность формализации для него всего лишь предлог этот кидок реализовать. А люди на работе злого намерения не имеют. И трудность формализации для них просто очередная рутинная трудность, которую надо преодолевать совместными усилиями.

Date: 2015-05-03 08:45 am (UTC)
From: [identity profile] 3mer.livejournal.com
Вроде как перевод неформального в формальное есть политика, со всеми вытекающими

Date: 2015-05-03 09:51 am (UTC)
From: [identity profile] otrubon.livejournal.com
метка "ниАчём"
Edited Date: 2015-05-03 09:52 am (UTC)
From: [identity profile] zakharov75.livejournal.com
иногда за каждый раз приходится платить очень очень дорого
From: [identity profile] ok-66.livejournal.com
Если забить на тестирование, то да.

Date: 2015-05-03 01:20 pm (UTC)
From: [identity profile] semonsemenich.livejournal.com
Дыг... Доказано же...
From: [identity profile] fat-yankey.livejournal.com
Прогресс технологий развивает лень. Сейчас машинное время дешевле грязи, а временной зазор между окончанием редактирования кода и его исполнением минимален. Это развращает. Программисты вместо того чтобы думать - тестируют.

А вы представьте, что на сто программистов у вас одна машина, целиком занимающая Георгиевский зал Кремля. И что написанный на бумажке код вы отдаете девочкам-перфораторшам, таких как вы у них много, вы получаете назад колоду перфокарт только через час, а то и через несколько. Это теперь нужно нести в машинный зал, где вашу колоду поставят в очередь на исполнение. И только на следующий день вы получите назад распечатку с результатами исполнения.

Это дисциплинировало. Слово "тестирование" тогда было не в ходу. Не говоря уже о всяких TDD.
Edited Date: 2015-05-03 01:40 pm (UTC)
From: [identity profile] fat-yankey.livejournal.com
1. Злонамеренность в сюжете вторична. Я потому и начал с античности, что там достаточно очевидна незлонамеренность.

2. Ну да, только это и спасает.

Date: 2015-05-03 02:10 pm (UTC)
From: [identity profile] agasfer.livejournal.com
Да, к сожалению, повода обматерить Исаева лишний раз этот текст не дает.

Date: 2015-05-03 02:15 pm (UTC)
From: [identity profile] fat-yankey.livejournal.com
"А примешь ты смерть от коня своего". Да, согласен. Темы сходные.
From: [identity profile] ok-66.livejournal.com
Зачем представлять? 83-й, ВЦ СОАН, так и работал. Только никаких девочек не было, всё сами набивали.
From: [identity profile] fat-yankey.livejournal.com
Хм. Работал там же в 81 (ещё школьником), девочки были. Разогнали к 83? Ну и машин тогда конечно было уже не одна...
Edited Date: 2015-05-03 02:28 pm (UTC)
From: [identity profile] ok-66.livejournal.com
Насчёт очевидности в первом пункте можно и поспорить.
From: [identity profile] fat-yankey.livejournal.com
Да и вообще, новые времена уже наступали. Был уже КРАБ, можно было обойтись без перфокарт.
From: [identity profile] ok-66.livejournal.com
Не знаю, у нас как-то даже таких вопросов не возникало. М.б. по штату не полагалось?
А в НГУ в это же время уже во всю использовали терминалы.
From: [identity profile] ok-66.livejournal.com
Да, а вместо "тестирование" говорили "отладка".
From: [identity profile] fat-yankey.livejournal.com
Отладка - это debugging. Тогда, впрочем отладку и тестирование еще не разделяли.
From: [identity profile] fat-yankey.livejournal.com
Моя должность называлась "лаборант", основными должностными обязанностями было как раз таскать тексты на набивку, перфокарты на исполнение и забирать распечатки. Девочки-перфораторщицы там были при БЭСМах, а не в каждой группе. По штату никому не полагалось. Может у вас бюджета не было?

Date: 2015-05-03 02:53 pm (UTC)
From: [identity profile] nealar.livejournal.com
люди на работе злого намерения не имеют
Принцип Хайнлайна, да. Мне в текущем проекте потребовалось 6 месяцев, чтобы проверить, что да, действительно не имеют.
From: [identity profile] ok-66.livejournal.com
Чёрт его знает, может и не было. На набивку отдавал программы уже в Тюмени, даже специальные бланки помню.
Page 1 of 4 << [1] [2] [3] [4] >>

Profile

fat_yankey: (Default)
Igor Kurtukov

December 2025

S M T W T F S
 123456
78910111213
14151617181920
21222324252627
28 2930 31   

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 3rd, 2026 12:14 am
Powered by Dreamwidth Studios