(A)

Увидел в тексте правительственной телеграммы непонятную штуку — букву «А» в скобках: «(А)».

По контексту догадался, что это «@», но не сразу понял откуда такое обозначение. Лишь чуть позже дошло, что «@» — «„а“ в кружке́ », кружок показали скобками, а так как в телеграмме всё набирается прописными буквами, то и получается такое странное сочетание знаков.

2 комментария

Гиря братьев Рекшинских

Ржавое металлическое гирькообразное изделие с отверстием вверху и рельефным клеймом на теле, стоящее на белой поверхности рядом с латунным подсвечником.
Гиря в два фунта, изготовленная на заводе братьев Рекшинских

Недавно один из чердаков обогатил меня старинной гирей в два фунта (818 грамм, если верить нашим кухонным весам). С одной стороны у неё клеймо с весом («2Ф» — два фунта) и производителем («БР. Р», гирю выпустил завод братьев Рекшинских), с другой — изображение двух сторон медали, которую Рекшинские получили за свою продукцию в 1886 году на одной из выставок. На изображении аверса сокращённая надпись «За трудолюбие и искусство» и год получения медали, на реверсе — портрет Александра Третьего.

Ржавая металлическая гиря с круглым отверстием и отчётливым клеймом «16» в центре, держится в руке на размытом фоне.
Поверочное клеймо, поставленное в 1908 году поверочной палаткой Нижнего Новгорода

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

На странице 214 справочника А. И. Гуляева «Торговля и торговыя установленія» читаем:

Вновь изготовляемыя металлическія гири должны быть снабжены особою вывѣрочною пробкою изъ красной мѣди, для наложенія на нее клеймъ.

Поверочные клейма стали ставить на гири ещё в 12 веке, но до 1899 года в этом вопросе был полный бардак — поверка производилась нерегулярно, часто — единственный раз, в момент изготовления, пошлина за услугу была в каждом городе своя и так далее.

На моём фото поверочное клеймо образца 1907 года — тогда его изменили на торговых гирях с орла на инициалы императора («Н II» — «Николай Второй») и корону. Цифра под короной — номер поверочной палатки (отделения Палаты мер и весов, осуществившего поверку), а «08» — год проведения процедуры (1908).

В моём случае номер поверочной палатки — «6», это палатка Нижнего Новгорода, где и располагался один из заводов Рекшинских.

Оставить комментарий

Кирпич «АК»

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

Пока был в отпуске, один из друзей прислал фотографию кирпича, который нашёлся во дворе его дома в Казани. Дом старинный, кирпич, по виду — тоже. Очень необычное место расположения клейма — на постели, это редкость, обычно они у нас на тычке.

На роль производителя у меня только одна кандидатура — крестьянин Алексей Калугин, кирпичный завод на Арском поле которого в 1894—95 годах упоминается в источниках. Завод основан в 1885 году, производил по 300 тысяч кирпичей и работало на нём девять человек.

Оставить комментарий

Мениск

Раздел «Вывих нижней челюсти» (Luxatio mandibulae) описывает двусторонний и односторонний вывих, причины, механизм смещения головки челюсти и защемление межсуставного мениска.
«Терапевтический справочник. Том второй», Саратовское государственное издательство, 1935, стр. 538

На «Реддите» вовсю обсуждают вещи, о которых узнали очень поздно. Я тут тоже кое-что узнал в 41 год.

Открытие недели  — мениск бывает не только в колене (и даже там их два)! Оказывается в человеческом организме менисков немало, кроме колена, они находятся так же в акромиально-ключичном, грудино-ключичном, лодышечном, кистевом и височно-нижнечелюстном суставах.

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

Оставить комментарий

99 бутылок: Zephir

69. Zephir — язык программирования, созданный для написания модулей расширения PHP и являющийся его сателлитом. Текущая версия (0.12.2) содержит несколько багов, с которыми пришлось столкнуться при написании программы. К счастью, перед компиляцией «Зефир» транслируется в Си, поэтому разобраться в происходящем труда не стоило.

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

По синтаксису «Зефир» явный наследник ПХП, но выглядит почище — без «долларов» в именах переменных (которые многих раздражают) и скобок в управляющих конструкциях (из-за чего напоминает мне Гоу). Процедурное прошлое здесь почти не видно — многие функции на типами имеют объектные эквиваленты.

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

«Песня о пиве» на «Зефире» выглядит следующим образом:

// Beer song by Evgeny Stepanischev
// song.zep
namespace Beer;

class Song
{
	private static function format(int bottles) -> string
	{
		string result = "";

		switch bottles {
			case 0:
				let result = "No bottles";
				break;
			case 1:
				let result = "1 bottle";
				break;
			default:
				let result = "%d bottles"->format(bottles);
		}

		return result . " of beer";
	}


    public static function sing() -> void
    {
    	int bottles = 99;
    	var botStr = self::format(bottles);

        while bottles > 1 {
        	echo "%s of beer on the wall, %1$s of beer.\n"->format(botStr);

        	let bottles--;
        	let botStr = self::format(bottles);

        	echo "Take one down and pass it around, %s on the wall.\n\n"->format(botStr);
        }

        echo "No more bottles of beer on the wall, no more bottles of beer.\n",
        	"Go to the store and buy some more, 99 bottles of beer on the wall.\n";
    }

}

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

zephir build
php -d extension=beer.so -r 'Beer\Song::sing();'

Оставить комментарий

PHP: доступ к приватным свойствам

Кинули ссылку на один из способов получения доступа к приватным свойствам в ПХП, тут создаётся функция, которая вызывается в контексте объекта с закрытым свойством:

function inspect_closure(object $o, string $p)
{
    return (function () use ($p) {
        return $this->$p;
    })->call($o);
}

Я решил вспомнить сколько таких способов вообще существует в ПХП.

Сначала, очевидно, на ум должен прийти рефлекшн, ведь он для этого и предназначен:

function inspect_reflection(object $o, string $p)
{
	$refClass = new \ReflectionClass(get_class($o));
	$refProp = $refClass->getProperty($p);
	$refProp->setAccessible(true);

	return $refProp->getValue($o);
}

Теперь экзотика. Например, мне вспоминается доступ через преобразование в массив, я о нём уже однажды писал. При преобразовании объекта в массив его приватные и защищённые свойства видны по специальным именам в полном соответствии с документацией:

function inspect_array(object $o, string $p)
{
    return ((array) $o)[
    	sprintf("\0%s\0%s", get_class($o), $p)
    ];
}

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

По сути — родственник предыдущего метода. При сериализации все закрытые свойства в объекте сохраняются под теми же специальными именами, что в предыдущем способе:

function inspect_serialize(object $o, string $p)
{
	$class = get_class($o);
	$serialized = serialize($o);

	if (preg_match("/s:\d+:\"\\0{$class}\\0{$p}\";([^;]+;)/s", $serialized, $m)) {
		return unserialize($m[1]);
	}

	throw new \UnexpectedValueException('Something went wrong.');
}

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

Оставить комментарий

HA

Сначала немного не по теме.

Все файлы на виртуалку я переношу через образ дискеты и перво-наперво несколько слов о том как создать образ дискеты на «Маке». Мне необходимо куда-то записать эту информацию, иначе она у меня постоянно теряется. Из командной строки это делается так:

dd if=/dev/zero of=floppy.img bs=1024 count=1440
diskutil eraseVolume MS-DOS VOLUME `hdiutil attach -nomount floppy.img`
hdiutil attach floppy.img

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

Как справедливо напомнили читатели в комментариях к моему эксперименту c ARJ, в 90-е чемпионом по сжатию был архиватор HA (с алгоритмом PPM). Он был очень медленным по тем временам (помню DOOM сжимался за часы) и поэтому не слишком распространённым, но я с ним сталкивался.

Скриншот командной строки: утилита HA 0.9991a сжатия файла FILE.TXT методом HSC (23,7%), создание архива FILE.HA, затем вывод списка директории C:\ через dir.
Успехи архиватора HA — 23,7% исходного объёма

Для тестирования я выбрал форк архиватора, с которым сталкивался во времена интереса к языку программирования Си-​-. Форк быстрее оригинала в 1,5 раза, впрочем, как оказалось, сейчас это вряд ли имеет значение — сжатие файла из вчерашнего теста заняло малозаметное время.

214962-байтный файл сжался в 51088 байт, это 23,8% от исходного объёма. Это лучше современного xz с его 25,4 процентами, но по-прежнему хуже архиватора Compressia с его космическими 20,6%!

3 комментария

ARJ

Что-то меня потянуло на разную околокомпьютерную древность.

Пока экспериментировал с арифметическим кодированием, как-то сами собой вспомнились различные архиваторы времён ДОСа, но больше всего почему-то ARJ, который в «Иркеннефти», где я иногда в летние каникулы работал в детстве, называли «а-эр-йот».

Скриншот интерфейса Norton Commander: два окна с файлами на дисках B:\ и C:\, выделен файл file.arj, внизу меню команд и дата 10-01-90
Один из рассказов Анджея Земянского, сжатый «а-эр-йодом» в экране «Волкова Коммандера»

Захотелось его сравнить с чем-нибудь современным.

Скачал виртуальную машину с MS-DOS 6.22, установил туда ARJ 2.21 (это версия сентября 1991 года) и попробовал посмотреть насколько уменьшится один из рассказов Анджея Земянского — первый попавшийся текстовый файл, который был у меня на компьютере.

В итоге файл размером 214962 байт ужался до 67634, это 31,5% исходного объёма. Современный архиватор xz 5.4.2 на максималках (использует алгоритмы LZMA и LZMA2) ужал тот же файл до 54648 байт, это 25,4% исходного объёма. Вроде неплохой прогресс.

Интерфейс программы Compressia (Beta) Version 1.0: файл FILE.TXT сжат с коэффициентом 4.846:1, оригинальный размер 214962 байт, сжатый — 44361 байт, дата изменения 31 авг 2019.
Архиватор 2003-го года уделывает современный xz, как Тузик грелку

Но потом я вспомнил, что где-то в сети существует таблица сравнения архиваторов за 2002-й год. Победителя нагуглить не удалось, зато архиватор «Compressia», который находится строчкой ниже, нашёлся на «ВебАрхиве». Он смог сжать тот же файл до 44361 байт, что составляет 20,6% исходного файла. А это архиватор 2003-го года (я скачал последнюю версию — 1.0b)!

Всё как обычно — есть популярные продукты, а есть почти неизвестные программы, которые в тёмном углу пилят какие-то одиночки. Любопытно — как обстоят дела в этом пыльном углу в этом году, каких успехов добились такие малоизвестные архиваторы?

8 комментариев

JPEG: арифметическое кодирование

Скриншот интерфейса GIMP с пиксельным изображением Стива Джобса в центре холста, под ним — логотип Apple и годы «1955» и «2011».
Редактор «ГИМП» умеет открывать джейпеги с арифметическим кодированием

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

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

WebP едва появился в большинстве браузеров, а уже предлагается добавить поддержку BPG и FLIF. На фоне этой всей движухи неясно почему почти никто не обращает внимание на арифметическое кодирование в старом-добром джейпеге.

Этот метод кодирования изначально был защищён патентами компании «АйБиЭм» и поэтому декодеры его не реализовывали, но несколько лет назад патенты истекли и теперь вполне можно было бы добавить его в браузеры, жаль, что пока никто этого не сделал.

Скриншот терминала с выводом команды ll example*, показывающий список файлов example0.jpg–example6.jpg с правами, размером, датой и владельцем.
Эксперимент по использованию различных оптимизаторов джейпега

Меня привлекают в арифметическом кодировании две вещи: почти моментальная скорость преобразования без потерь из «традиционного» джейпега и бо́льшая эффективность кодирования.

Для эксперимента я взял первый попавшийся джейпег, который лежал у меня в папке «Загрузки» и попробовал сравнить результат арифметического кодирования и другие методы оптимизации в различных сочетаниях. На скриншоте выше example0 — исходный файл, example1 и example2 — результаты арифметического кодирования, остальные файлы применением других оптимизаций.

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

Оставить комментарий

Картинка в терминале

Несколько лет назад программа «айТерм2» (iTerm2, терминал для «Мака») обзавелась поддержкой графики в командной строке. Сильной необходимости в ней нет, но иногда это удобно — можно посмотреть картинку на удалённом сервере, не выкачивая её себе.

Вообще уже очень давно существует формат «Сиксел», рождённый в незапамятные времена компанией «ДЭК» (DEC), его даже поддерживают некоторые терминалы, но он значительно сложнее придуманного авторами «айТерма2».

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

Скриншот: два файла test.gif и test2.gif (24x96) с вертикальным текстом HELP рядом с терминалом bash, где выполнена команда cat ~/Downloads/test2.gif, выводящая тот же текст HELP.
Картинку с надписью «HELLO» видно сразу и в графической среде, и в терминале

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

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

Для этого я нарисовал небольшой ГИФ и вставил закодированную картинку после изображения следующей командой:

cat test.gif \
    <(echo -ne "\033[3F\033[J\033]1337;File=inline=1:") \
    <(base64 test.gif) \
    <(printf "\a")\
> test2.gif

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

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

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

4 комментария

Теория разбитных окон ★

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

Потом мои мысли перескочили на дочку — моего собственного ребёнка, дальше по ассоциативному ряду — на её недавний день рождения и переход в старшую группу садика, в двуязычную среду (англо-русскую). И вот тут мне в голову пришла следующая мысль.

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

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

8 комментариев

Отцовское

Я маленький котик,
И я чую тортик!
Ева (три года)

Неожиданно одна из самых стрессовых для меня штук в отцовстве — дни рождения дочки. Подготовку большей частью на себя берёт жена, и я просто не представляю сколько сил она на это тратит. Меня же сажает на ноль само событие, отчасти, наверное, из-за шума — я отаку тишины, непрерывный громкий шум быстро высасывает все силы.

Сегодня в первой половине дня праздновали трёхлетие дочки — до дневного сна была первая, «детская» часть. Сейчас дочка спит, жена чем-то шуршит в большой комнате, а я попытался немного восстановиться — залез в горячую ванную, выключил свет и посидел в темноте и тишине. Только что понял, что уже много лет использую для восстановления сил некое подобие флоатинга. Надо бы, кстати, сходить туда на три часа, как планировал.

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

Дочка в восторге, в дневной сон ушла счастливая и совершенно без сил. Пойду готовиться ко второй части праздника, пока она не проснулась.

4 комментария

«Жулик»

Черно-белое фото старого металлического патрона для лампочки с резьбой, к которому проводами подключены два керамических изолятора.
«Жулик» — керамический патрон-розетка, фотография с сайта «Мешок»

У меня тут в комментах и письмах уже спрашивают — всё ли в порядке, вернулся ли я из офлайн-лагеря. Да, я вернулся, но пока что-то недосуг поделиться впечатлениями, но чтобы обозначить, что со мной всё в порядке, поделюсь кое-чем из черновиков.

Немногие сейчас помнят, но когда-то электрические счётчики были довольно дорогим удовольствием и потребление энергии считали по нормативу — по количеству патронов для ламп и розеток в помещении. Цена с розетки была выше, что логично — мощности лампочек были небольшие, а в розетку, например, можно было воткнуть утюг, — он потребляет много.

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

7 комментариев

Офлайн-лагерь

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

Фотоаппарат с собой взять будет можно, но только плёночный. Таких у меня дома три — советские «ФЭД-2», «Zenit-E» и «Зоркий», но не представляю как понять работают ли они. Попробую пощёлкать ими вхолостую, возьму тот, который покажется более работоспособным. Посмотрим, повезёт ли. Если да, постараюсь поделиться иллюстрированными впечатлениями.

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

9 комментариев

Гончарно-кирпичный завод Агапова

Аренда земли в Кресте для Агапова: участок 225 кв. саж. под гончарно-кирпичный завод, 12 лет, аренда по 25 к. с сажени при использовании городской глины, иначе 4 к. с сажени в год.
Выписка из книжки «Систематическій сборникъ постановленій Казанской Городской Думы за 22 года (съ 1871 по 1892 включительно)», сведения за 1877 год

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

Наконец-то удалось получить выписки из постановлений Казанской Городской Думы (спасибо, В. П.!), о которых я упоминал ещё в апреле. К сожалению, усилия принесли только одну фамилию, даже без инициалов (впрочем, в последнее время и это много — уже давно не удавалось найти новых сведений).

Теперь известно, что в 1877 году некий крестьянин Агапов собирался построить гончарно-кирпичный завод на участке между Адмиралтейской слободой и устьем Казанки.

Оставить комментарий

Спички на экспорт

Старый деревянный коробок спичек «KAYS» с красной этикеткой: «BUY AT KAYS AND SAVE MONEY», «IMPREGNATED SAFETY MATCHES», «AVERAGE CONTENTS 50 MATCHES MADE IN RUSSIA» на белом фоне.
Экспортные спички «Kay’s», сделано в советской России в первой половине 20-го века

Недавно на чердаке старинного дома я нашёл раздавленный коробок с англоязычной надписью «сделано в России» и заинтересовался что он такое, — судя по шрифту, коробок очень старый. Оказалось — такие спички делали на экспорт. Согласно «Каталогу экспортных спичечных этикеток России» Зацепина со товарищи, бренд «KAYS» производил спички с 1929 года.

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

Оказывается экспортировать спички начали ещё при царе, в революцию торговые связи закономерно порушились и экспорт восстановили только в 1922—23 годах. Сейчас это выглядит удивительным, но некоторые страны восстановлению активно препятствовали, например в США на русские спички была наложена запретительная пошлина, снятая только в 1932 году.

Несмотря на это, к концу 20-х годов Советский Союз экспортировал свои спички в более чем полтора десятка стран.

Небезынтересна так же фраза «impregnated safety matches» (здесь: «пропитанные безопасные спички»). Это означает, что спички пропитаны специальным веществом для предотвращения тления (выкинутая тлеющая спичка могла привести к пожару). В начале 20-го века такая пропитка уже была обычным делом, но подобные надписи какое-то время ещё оставались на этикетках.

2 комментария

99 бутылок: dc

68. DC — программа для арифметических вычислений с произвольной точностью в Юникс-системах, это одна из старейших программ, старше языка «Си». Представляет собой стековый калькулятор с обратной польской записью.

Поддерживаются 256 стековых регистров и основной стек программы. На стеках могут размещаться числа и строки, последние могут исполняться, как подпрограммы. Команды однобуквенные, некоторые имеют операнд; числа записываются как есть, строки — между квадратными скобками.

Компактно «песню о пиве» можно записать таким кодом:

[n10P]su[[s]P]ss[[No bottles]Plon2+Q]sn
[d0=ndn[ bottle]n1!=slon]sb[ of beer]so
[ddlbx[ on the wall, ]nlbx[.]lux
[Take one down and pass it around,]lux
1-dlbx[ on the wall.]lux[]luxd0!=B]sB
99lBx
[No more bottles of beer on the wall, no more bottles of beer.
Go to the store and buy some more, 99 bottles of beer on the wall.
] n

А вот вариант с комментариями (которые, правда, не делают программу уж сильно понятнее):

# beer.dc
# Степанищев Е. В. bolknote.ru

# Печать с переводом строки, мне не нравится помещать
# его в строку символом — ломаются отступы
[
	n 10 P
] su

# Печатаем «s»
[
	[s] P
] ss

# Печатаем «No bottles of beer», убираем (сложением) ноль со стека,
# прерываем выполнение родителя (выходим из двух уровней)
[
	[No bottles] P lon
	2+Q
] sn

# Вывод кол-ва бутылок с «bottle(s) of beer»
[
	d 0 =n
	d n [ bottle] n 1 !=s lon
] sb

# « of beer» — в регистр «о», будем использовать
# для вывода части фразы
[ of beer] so

# основной цикл программы (вызывается рекурсивно)
[
	d

	d lbx [ on the wall, ] n lbx [.] lux
	[Take one down and pass it around,] lux

	1-
	d lbx [ on the wall.] lux [] lux

	d 0 !=B
] sB

99 lBx

[No more bottles of beer on the wall, no more bottles of beer.
Go to the store and buy some more, 99 bottles of beer on the wall.
] n

Оставить комментарий

Старомосковский русский

Нередко в досужих разговорах с приятелями всплывает тема диалектов — рассуждаем почему русский язык почти одинаковый на территории всей нашей немаленькой страны. Да, отличия в говорах есть, но они минимальны, несравнимо, к примеру с Германией, где они едва понимают друг друга. Думаю, это заслуга движения по унификации всего и вся в СССР, но может и нет, правильного ответа я не знаю.

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

Недавно обратил внимание, что одна из моих знакомых произносит некоторые слова без конечного мягкого знака. Что-то типа «поберегис» («поберегись»), «боюс» («боюсь»). Оказалось, что это особенность старомосковского произношения, одна из немногих сохранившихся в речи старших поколений.

Пока читал в Википедии соответствующую статью, нашёл и у себя несколько старомосковских особенностей. Например — смягчение согласных («Перьмь», «дьверь»).

4 комментария

«Форбс»

Пару дней назад неожиданно написала бывшая коллега — сказала, что со мной ищет контакта журналист из «Форбса», собирает материал для статьи о проекте, к которому я когда-то имел отношение. Мне стало интересно, связались через «Фейсбук».

Мы сейчас всей семьёй отдыхаем за границей, поэтому журналист предложила позвонить через фейсбучный «Мессенджер» (я даже не подозревал, что там есть звонки), проговорили больше часа, что смог — вспомнил.

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

Оставить комментарий

Тайна кофейного стаканчика

Вырезанная из бумаги полоска с логотипом «Буханка пекарня» и инфографикой о пользе кофе, рядом ножницы, бумажный стаканчик и синяя салфетка на столе.
Внутренности сегодняшнего стаканчика из-под кофе

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

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

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

4 комментария