{imgicourl}{zamok}
Другие записи за это число:
2019/06/25_bibl - Завтра, 26 июня - День фантастики в библиотеке Стругацких
2019/06/25_1 - Спектакль «В городе Лжедмитрове»
<< предыдущая заметкаследующая заметка >>
25 июня 2019
СЕНСАЦИЯ!!! НЕИЗВЕСТНЫЕ ТЕКСТЫ БОРИСА СТРУГАЦКОГО!!!

В процессе отмечания с лауреатами АБС-премии в доме-музее, благодаря Юрию Флейшману (исследователь творчества Стругацких из т.н. группы «Людены»), обнаружена флешка Бориса Натановича. Последние записи на ней датируются сентябрем 2012 года — незадолго до его ухода. Эту флешку Борис Натанович брал с собой в поездки и больницы, куда неоднократно ложился в тот год, чтобы работать на ноутбуке. На флешке имеются папки и файлы: BIN/ — наборы любимых программ Бориса Натановича и НЕЧИТАННОЕ/ — большой корпус текстов разных, в том числе молодых, авторов, которых Борис Натанович накачал себе из интернета чтобы читать в свободное время. Судя по остаткам верстки, тексты Борис Натанович брал прямо на сайтах авторов. Найдите там себя и обрадуйтесь: показать список папки НЕЧИТАННОЕ/

Но куда интереснее папка BIN/. Все знают, что Борис Натанович был научным работником, астрономом. Некоторые подозревают, что он умел программировать — уж больно выпукло описан программист Саша Привалов. Но мало кто знает, что Борис Натанович постоянно писал для себя какие-то небольшие программки, которые помогали ему вести базы домашних расходов, списки собственных изданий и переводов на другие языки, каталоги почтовых марок своей любимой коллекции, подсчитывать итоги голосований в жюри сетевых конкурсов, играть со словарями и даже сочинять кроссворды. Борис Стругацкий интересовался разными языками программирования (вспомним «программирование_Делфи.pdf» в корне флешки), но программы для бытовых нужд любил писать на привычном Паскале и компилировал в EXE для DOS. При помощи DOSBOX мы с Юрой Флейшманом запустили парочку таких программ. Публиковать данные домашнего хозяйства и полную коллекцию кода у нас нет прав, но тексты нескольких программ я выпросил. Уверен, всем программистам, особенно знающим Паскаль, будет крайне любопытно взглянуть на текст, написанный лично Борисом Натановичем Стругацким.

Итак... Сенсация! Неизвестные! Никогда прежде не издававшиеся! Тексты Бориса Стругацкого! Написанные им на языке Турбо-Паскаль!

F:/BIN/RSFSR/CROSWORD/CROSWORD.PAS

Программа для составления кроссвордов, ролик ее работы мы видели в начале заметки. Эта программа настолько прекрасна, что я выпросил у Андрея Стругацкого (сына) разрешение ее выложить вместе с данными словарей и EXE. Программка под DOS, запускается на современных компьютерах и смартфонах с помощью DOSBOX, полный её архив с бинарником здесь. А это листинг самого текста на Паскале: показать CROSWORD.PAS

F:/BIN/BUHNAUN1.PAS

Похоже, программа ведения финансовых расходов/приходов. Интересны финансовые статьи Бориса Стругацкого: «Домхозяйство», «Филателия», «Авто», «Книги», «Подарки», «PC/TV/VM», «Отпуcк,сад,ремонт», «Медицина», «Налоги», «Гонорар», «Филателия», «Дивиденды», «Пенсия»... показать BUHNAUN1.PAS

F:/BIN/SKATING.PAS

И напоследок — программа расстановки авторов по призовым местам по скейтинг-системе по итогам работы жюри. Любопытна пометка в коде программы: «Число авторов >10 бессмысленно: невозможно расставить такое кол-во по местам». Борис Натанович явно знал, почему на Грелке такие бессмысленные итоги! Показать SKATING.PAS

В общем, мое уважение к таланту Бориса Натановича, и без того бесконечное, умножилось многократно. Спасибо Андрею Стругацкому и Юрию Флейшману за разрешение опубликовать этот интереснейший материал для всех интересующихся.

<< предыдущая заметка следующая заметка >>
пожаловаться на эту публикацию администрации портала
архив понравившихся мне ссылок
Оставить комментарий
Linux Firefox
 Boulder
3
0
Михаил (#1684620)
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Писать на Фортране можно на любом языке. :–)

> Любопытна пометка в коде программы: «Число авторов >10 бессмысленно: невозможно расставить такое кол-во по местам». Борис Натанович явно знал, почему на Грелке такие бессмысленные итоги!

Любые итоги вида «расставить по местам» в реальных условиях бессмысленны. Про это есть теорема Эрроу аж от 1951 года.

А что за скейтинг-система такая. Из кода не очевидно, а по найденной ссылке на танцевальный союз какая-то простыня на стопицот страниц. Не может вменяемая система быть такой замороченной.
Linux Ubuntu Firefox
 Санкт-Петербург
0
0
LLeo (openid/index.php)
Скейтинг система пришла из оценки фигурного катания, она взвешивает каждое место жюри весовым коэффициентом. Например на Грелке так: каждый член жюри отмечает 6 мест в порядке убывания симпатий. За каждое 1-е место номинант получает 10 баллов, за 2-е - 6 баллов, 3-е - 4 балла, 4-е - 3 балла, 5-е - 2 балла, 6-е - 1 балл. Таким образом номинанты, которые кому-то понравились настолько, что их ставили на 1 и 2 место, получат более значительный отрыв по баллам при общем суммировании.
Linux Firefox
 Boulder
0
0
Михаил (#1684620)
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Когда я смотрел Формулу-1 в 90-е годы, там была такая же система очков, но никто её «скейтингом» не называл. И она как бы не требует длинного описания и замороченной программы. Но при простом подсчёте очков в итоге иногда получается несколько участников с одинаковыми местами, а тут, насколько я понял, есть какие-то механизмы для их принудительного упорядочивания.
Linux Ubuntu Firefox
 Санкт-Петербург
0
0
LLeo (openid/index.php)
На Грелке правило простое: если баллы совпали, преимущество имеет тот, кто набрал больше высших мест. Например, если у обоих совпали и баллы и даже количество первых мест, но зато вторых мест у одного больше, то он ценнее.
Linux Firefox
 Boulder
0
0
Михаил (#1684620)
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Дык, это обычная система. В Ф-1 так же было. Только там было ещё последнее правило, что если совсем всего поровну, то впереди тот, кто раньше получил высшее место. В голосовалке так не сделать из-за отсутствия понятия «раньше», но можно просто считать голоса главного судьи главнее или бросать монетку («компании не нужны неудачники!»).

Тут явно что-то более сложное.
Windows Firefox
 Киев
1
0
дррр (#7572179)
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
не могу разгадать, что значит VM в "PC/TV/VM"?
Linux Ubuntu Firefox
 Санкт-Петербург
0
0
LLeo (openid/index.php)
Похоже по смыслу на расходы на связь. Интернет у него был, но насколько я понимаю, какой-то свисток типа SkyLink. А может, ADSL. Также, очевидно, был мобильник. И домашний телефон. Телевизоры в доме есть в комнате (и вроде на кухне маленький), но никакой телевизионной приставки я не заметил. Телевизор при мне не включали. Полагаю, он подключен к коллективной антенне. По рассказам Андрея, отец телевизор не очень любил.

Может быть, VM означало старомодное "видеомагнитофон" и имелись в виду расходы на покупку DVD или абонент каких-то медиасервисов в интернете? :)
Windows Safari Chrome
 Улан-Удэ
0
0
Денис
Рискну предположить, что
"VideoMagnitofon",
ну, т.е. покупка кассет.
Windows Safari Chrome
 Санкт-Петербург
2
0
Шура
Вместо листинга CROSSWORD открывается SKATING. Окно с листингом BUH... не закрывается кнопочкой клозе.
Linux Ubuntu Firefox
 Санкт-Петербург
0
0
LLeo (openid/index.php)
Спасибо, поправил.

PS: А если браузер глюкнул и "close" не закрывается, попробуй нажать ESC на клавиатуре.
Mac Safari
 Израиль
2
0
braintunic
> если браузер глюкнул и «close» не закрывается, попробуй нажать ESC на клавиатуре

Ты хочешь, чтобы владельцы айфонов свихнулись, пытаясь найти кнопку ESC на виртуальной клавиатуре? ;)

А насчёт “браузер глюкнул”, чего только не придумаешь в оправдание нежелания искать и исправлять ошибку в программе!
Этот листинг BUHNAUN1.PAS не закрывается по кнопке Close во всех операционках (Android, iOS, Windows) и во всех браузерах.
Может быть, из-за превышения какого-то лимита на размер текста во всплывающем окне.

Ну а на тач-устройствах можно выйти из этого зависшего окна с помощью кнопки Refresh.
Windows Safari Chrome
 Израиль
0
0
б
Не провоцируй. Начнет ремонтировать - другое посыпется. Поэтому все, что не смертельно, лучше не исправлять. Это же не коммерческий проект.

Кстати, а ты не пытался скомпилировать программку? Ты же любопытный, так что возможно что пытался :)

- как сконвертировать исходники в UTF, используя iconv?
- Не нашел случаем исходники модуля Graph? Не хватает для компиляции
Linux Ubuntu Firefox
 Москва
1
0
Adamos
А смысл кодировать досовские исходники в UTF? Если там где-то как-то используются строки кириллицей, то все в CP866.
Graph - это, видимо, GRAPH.TPU: http://pascal.net.ru/Graph
Windows Safari Chrome
 Израиль
0
0
б
Да, спасибо. Работает

iconv -f CP866 -t utf8 < CROSWORD.PAS
Windows Firefox
 Молдова
0
0
Людовик XIV
Стесняюсь спросить - а нафига досовскую программу перекодировать из родной для доса кодировки cp866 в чуждую для доса и абсолютно тому неизвестную utf8? Просто чтобы исходники почитать?
Linux Ubuntu Firefox
 Владимир
0
0
Adamos
Возможно, чтобы собрать уже в современном Паскале - Lazarus, например, - и запустить в среде, где естественная кодировка - Юникод. Впрочем, кроссворд так вряд ли составится. Особенно если там действительно весь вывод через GRAPH.TPU - то есть досовские прерывания и костыли тридцатилетней давности, как минимум.
Windows Firefox
 Нижний Новгород
7
0
alxumuk2
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Эх, знакомый стиль кода научных работников старой школы. Куча переменных непонятного названия и кучей индексов.

Хотя сейчас, наверное, даже математики так код не пишут - в приличном обществе за такое принято бить канделябром.
Linux Ubuntu Firefox
 Санкт-Петербург
3
7
LLeo (openid/index.php)
А вот и эксперды Джавы со школьных курсов подтянулись! Сейчас объяснят Борису Натановичу, как ему правильно писать программы, чтоб работали :))) А потом прибегут эксперды литкружка и тоже начнут кивать головой и рассказывать, что выражение "кивнул головой" совершенно неграмотно.
Windows Firefox
 Нижний Новгород
14
0
alxumuk2
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Причем тут это???
Я, вроде, недвусмысленно сказал, что Борис Натанович писал в том стиле в котором писали люди его времени и положения. ШОК, СЕНСАЦИЯ, блин.
Да, времена сменились, и теперь такой стиль (во всяком случае у меня) вызывает сложную смесь отторжения и ностальгии. И че?
Windows Firefox
 Ростов-на-Дону
11
0
zatvornik
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
«Любой дурак может написать программу, которую поймёт компилятор. Хорошие программисты пишут программы, которые смогут понять другие программисты.»
© школота с курсов джавы
Windows Firefox
 Германия
0
1
Людовик XIV
Почему так пренебрежительно - "школота". Мысль на 100% верная.
Windows Firefox
 Австрия
1
2
Людовик XIV
От наличия, а тем более от такого бешеного количества goto Дейкстра плачет и переворачивается в гробу. От имён переменных плачут все и живые, и мёртвые программисты. Кроме быдлокодеров, говнокодеров и индусов, для них это нормально.
Linux Firefox
 Израиль
6
1
Mason
Нормальный код. Я прошелся по кроссворду.
Логика имен понятна и консистентна. Используемые короткие имена удобны и читабельны.
Комментарии краткие и ясные.

Если тебе так не нравятся goto - иди на форум поддержки Линукса и читай нравоучения разработчикам там.

PS. Перепиши программу (ты же знаешь паскаль) и выложи здесь. Посмотрим, как должен выглядеть код.
Mac Safari
 Москва
3
3
bambr
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Чукча не писатель, он попиздеть за Навального.
Linux Safari Chrome
 Германия
0
0
Alexander
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Не за, а против.
Windows Firefox
 Cambridge
0
1
Людовик XIV
Имена переменных идиотские. Именно так нас в своё время учили программировать на уроках информатики. Прошлый век, когда переменным нельзя было давать имена длинее пяти символов. Вернее давать можно было, но значимыми были только первые пять символов. Goto не нравится не только мне, goto не нравится никому и все адекватные люди стараются использовать goto лишь в крайнем случае и как можно реже. Внутри ядра goto порой единственный способ завершить цикл или покинуть функцию. Так что не надо сравнивать ядро Линукса и прикладную программу.

PS: я не знаю паскаль в той мере чтобы на нём программировать. Да, я умею читать программный код, да, я могу отличить говнокод от нормального. Но вот программировать сам я не умею. Правда в отличии от Бориса Натановича, который судя по коду тоже программировать не умел, даже не берусь за это дело.
Linux Firefox
 Пенза
0
0
qwerty блинн которого сайт забыл
jmp - это ужастно! вот только современнному процу более напряжен условный jmp. а без него никуда....

А вот на goto возбуждаться нечего, нормальный транслятор его соптимизит!
Windows Firefox
 Cambridge
2
1
Людовик XIV
1) У современного проца есть предсказатель переходов. Поэтому безусловный jmp современному процу более ужасен, чем условный, по которому предсказатель предсказал что перехода не будет и в 90% случаев предсказатель оказывается прав.
2) Разговор не про ассемблер и не про результирующий машинный код, разговор про ЯВУ где goto не место.
3) Срать тоже можно не дома в тёплом сортире, а прям в подъезде на лестнице - таджик дворник с утра "соптимизирует" лестницу и уберёт этот кусок "code out of reach".
Windows Firefox
 Ростов-на-Дону
6
0
zatvornik
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Да при чём тут транслятор? При чём тут проц? Использование goto приводит к спагетти-коду. goto создает проблемы на самом верхнем уровне - уровне программистов. А процу абсолютно всё равно, из каких команд высокого уровня его команды сгенерировались, из goto или из if.
Linux Ubuntu Safari Chrome
 Краснодар
6
0
Zenkov
Да видимо он и был обычный быдлокодер. Написал чтоб работало, на том на чём знал, да и ладно. Но с другой стороны с чего бы кому-то в голову пришло требовать от него что-то иное? Это ж даже не open source, это он тупо для себя.

Каганов вон позорится тут ежегодно никто ему и слово не скажет, а тут нашли какую-то программулину покойного деда и сразу море критики на качество кода
Mac Safari Chrome
 Redmond
0
0
Serge V. (#7616854)
Классно, спасибо!
Поставлю ссылочку в своём блоге.
Windows Safari Chrome
 Москва
0
0
vivliofika
Спасибо, Леонид!
Linux Safari Chrome
 Киев
1
0
фдуч2000
Эти программы - хороши. Просто потому, что выполняли свою задачу. Какими бы мусорными они ни были внутри.
Windows Safari Chrome
 Юбилейный
0
0
Excelence (#6601817)
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
...Сказал человек, регулярно прокрадывающийся в тройку грелочников-финалистов ))))))))))
Windows Safari Chrome
 Санкт-Петербург
4
0
Михайлов
Как-то это посмертное "публичное раздевание" привычек, навыков и умений известного человека слегка коробит. Понятно, что со всей любовью и уважением к нему, и с разрешения , но всё-равно - ограничиться литературой было бы пристойнее.
За список спасибо, что-то из него уже читал, слушал (твоё тоже слушал, в начитке Ерисановой издательства "нигденикупишь" - потом прочел уже глазами, с листа зашло лучше)
Windows Safari Chrome
 Израиль
2
0
б
Ну какое же это "публичное раздевание"? Это с любовью поданные новые, действительно интересные факты из жизни хорошего человека. По моему - одна из самых удачных заметок в Дневнике.
Linux Safari Chrome
 Якутск
0
0
vctor
Раздевание - это в произведении Филиппа Дика. Цитирую по памяти :

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

Дик как всегда отжог, а Леонид упомянул всего лишь флешку, обычный предмет обихода.
Linux Ubuntu Firefox
 Санкт-Петербург
1
1
LLeo (openid/index.php)
Капча 20. Надоел говноед, в каждый пост на любую тему прибегает свою желчь излить. Будем чистить сетевое пространство.
Windows Safari Chrome
 Москва
0
0
де2де2 (#6827698)
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
А чё такое "капча 20"?
Windows Firefox
 Ростов-на-Дону
0
0
zatvornik
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?


Windows Safari Chrome
 Бийск
1
0
alik
Мне кажется это флешка Леонида, он забыл потереть свои файлы из корня
Windows Safari Chrome
 Москва
0
0
Михаил
Леонид! Разве не ты устами Илены Google предупреждал нас, что бывает, когда подбираешь флэшки неизвестного происхождения?
Windows Safari Chrome
 New York
0
0
https://facebook.com/100002861379231
Тут ключевое - "неизвестного".
Mac Safari Chrome
 Amsterdam
0
0
Гость 3000 (#7669902)
Этот человек не загрузил свой юзерпик, и я подобрал ему этот. Человек, пишущий такое, должен именно так выглядеть, верно?
Давайте на гитхаб, че вы как эти.
Linux Ubuntu Firefox
 Санкт-Петербург
0
0
LLeo (openid/index.php)
Это рассматривается не как программный код, а как неизвестное литературное произведение великого писателя-классика. На Литрес и Амазон ;)
Linux Ubuntu Firefox
 Москва
0
0
Adamos
Это произведение обязательно должно быть отпечатано в печатной плате.
Linux Opera
 Липецк
0
0
legolegs
Огласите пожалуйста марку флешки! Вообще-то, этим приборам не свойственно сохранять информацию так долго, за семь лет многие ячейки памяти должны были утратить заряд.
Linux Safari Chrome
 Санкт-Петербург
0
0
LLeo (openid/index.php)
Не сфотографировал. Но копия флешки есть вроде у Юрия с соответствующей фамилией.
Windows Safari Chrome
 Москва
0
0
kerouack
Тогда флешки были меньше емкостью и больше ресурсом, SLC.
Чем больше на них можно запихать, тем меньше они служат.

всего комментариев: 51

<< предыдущая заметка следующая заметка >>