Oct. 27th, 2011

juan_gandhi: (Default)
Алгол был первый язык, с которым я ознакомился. Солидный язык, с подчёркнутыми ключевыми словами, бегин и енд, с процедурами... У меня ушла неделя, чтобы освоить это уравнение: x := x+1; но потом ничего пошло.

Только у нас на матмехе программирование было сопряжено с различными обстоятельствами. Сначала пишешь разборчиво код, сдаёшь на перфорацию; тебе выдают карты. Потом эти карты сдаёшь на машину; не следующий день тебе выдают узкую бумажную полосу, на котором или напечатан результат, несколько вещественных чисел, или длинная последовательность трёхзначных чисел - кодов, которые надо было расшифровать, чтобы прочитать сообщение об ошибке (типа "неопределённый идентификатор"). Это была машина М20. Потом наступил прогресс, и поставили машину М220 с широкой печатью. И в алголе нашем, в смысле в библиотеке, появилась новая процедура для печати, p0165. До того была p0042, которая только цифры печатала. А теперь тексты; и сообщения об ошибке тоже печатали нормальным языком.

Я к тому времени надыбал шабашку (контракт, на современном языке) и ходил по вечерам да по ночам на БЭСМ-4, программировал что-то геологическое. Там проблемы были не с алголом, а с компилятором алгола - компилятор был на лентах, а ленты хреново читались. И вот нажимаешь кнопку, твои перфокарты прочитаются, первый проход компилятора нормально, а второй проход не читается. Повторяешь. Не читается. И так много раз.

Напечатать график на этом широком АЦПУ было достижением программирования (такой у нас тогда был уровень). И у меня была мечта - написать бы свой язык, без всей этой ерунды с бегинами и ендами, с процедурами и параметрами по значению, а чтобы интерпретировал прямо с перфокарт, без проходов.

Много позднее я такой язык встретил, он назывался Форт.

После матмеха я ещё один раз сталкивался с алголом - на Минске-22, старинном драндулете, тоже с широкими магнитными лентами, с пультом с лампочками... но на Минске-22 мне не довелось поработать.
juan_gandhi: (Default)
Недавно у себя на ящие открыл наличие местных каналов в HDTV. Это такое качество (если на новом телевизоре), что пикселов не видать. Но при этом картинка как бы несколько ненормальных цветов. Вот оглянуться вокруг - света плавные, приглушенные; да даже если ты на пляже на океане, и то песок отсвечивает серым, а в небе цвета, как бы это сказать, разноватые.

А тут - как Дали. И, глядя какие-нибудь новости, типа просто как Сал Кастаньеда рассказывает про трафик, или там Джулия Хейнор про разгон демонстрации идиотов (мы - 47%, дайте нам ваши денежки!) в Окленде, чувствую, что меня это не то что зомбирует, а гипнотизирует. И уже пофиг, могу переключить на какое-нибудь мексиканское реалити шоу, где участница искренне сообщает, что не помнит, сколько раз замужем была, а зал возмущается - я и не слушаю, но просто смотрю на картинку. Блин, это как если бы курнуть мариванны и сесть перед ящиком, и картинка становится трёхмерной и начинает переливаться. А тут ничего не надо, само.

Вот же ж наркотик. Но на старом (типа трёхлетней давности) телевизоре такого эффекта нету.
juan_gandhi: (Default)
...
Чтобы сэкономить на проезде в Европе – натрите билетик мылом в том месте, где автомат пропечатывают дату и время.

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

(src
juan_gandhi: (Default)
Я окончил алгол и матмех практически одновременно. Некоторое время пошкандыбал на ассемблере, но это неинтересно; и т.к. на нашем родном заводе, ЛМЗ, было много научных расчётов (турбины и т.п.), то фортран, передовой для того времени язык, удалось впарить довольно быстро. На Минске-32 был фортран-4, вполне миленький язык, с возможностью отладочного вывода, в частности.

Ну что такое фортран: несколько операторов да форматы. Форматы - это было как раз новенькое, и по устройству они эквивалентны нынешним форматам в си и джаве (джавщики обычно в области форматов невежественны). Шесть пробелов в начале строки, куда можно совать метки. Эффективно очень для программирования, если goto не злоупотребляешь. Я злоупотреблял, так что у меня иной раз с трудом давалось.

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

На Минск-32 тоже были перфокарты, с более передовой кодировкой - поперёк карты. Так что фортран практически можно было читать глазами, если коды знаешь; а кто в те времена не знал кодов.

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

На следующей работе мы вообще поставили фортран главным языком; на нём и накатали систему управления буровой, для М6000 (это аналог хьюлет-паккардовских каких-то машин). Ну там чуток на ассемблере, механизм диспетчеризации мессагов да конструкты всякие типа case. Да, у нас в фортране были и кейсы, и фильтры, и мапы... функционального программирования было до хренища. Я и слова такого не знал, просто имплементрировал да и всё; потом пришел [livejournal.com profile] sguez и объяснил нам, что мы пишем функционально. Ну кто как, конечно, но в целом да. И акторы у нас были, но статически всё определялось, кто кому что может рассылать и кто что принимает.

В сумме на фортране я программировал лет 15, наверное. Чем фортран специфически хорош - 1to1 мапингом строк программы на ассемблерный код. Так что, зная, как оно компилируется, можно творить чудеса. Что мы и делали.
juan_gandhi: (Default)
А вот берём бифштекс, кладём в полиэтиленовый пакет, добавляем специй, ну и там на 5 минут в микроволновку. Типа на пару?

Profile

juan_gandhi: (Default)
Juan-Carlos Gandhi

June 2025

S M T W T F S
1 2345 6 7
8 9 10 11 121314
15161718192021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 14th, 2025 07:07 am
Powered by Dreamwidth Studios