99 бутылок: Эллочка
58. Эллочка. Мне написал автор языка программирования «Эллочка» с предложением написать на нём «99 бутылок…», как вы знаете, у меня есть хобби — писать такие программы на разных языках.
Для этого языка есть единственный, авторский интерпретатор под ДОС (и очень важно использовать в файле программы символы перевода ДОС/Виндоуз, иначе ничего не будет работать), а сам язык напоминает странноватый Бейсик, без поддержки функций и процедур. Их можно эмулировать, используя трюк со специальной переменной «@», которая содержит номер текущей строки.
В языке есть ряд интересных возможностей, но их затмевают недостатки разного калибра, что характерно для языков без сообщества. Даже в таком простом примере мне пришлось побороться за работоспособность программы. Например, перед числами
!99 beer song by Evgeny Stepanischev
!Used variables: B, R, $1
B=99
@cycl
R=@+2
goto @beer
list ' of beer on the wall, '
R=@+2
goto @beer
list '.'\
list 'Take one down and pass around'\
decr B
R=@+2
goto @beer
list ' of beer on the wall.'\
list ''\
wait
clsc
esli B >> 0; @cycl
list 'No more bottles of beer on the wall, no more bottles of beer.'\
list 'Go to the store and buy some more, 99 bottles of beer on the wall.'
exit
@beer
esli B >> 0; +3\
list 'No bottles'
goto R
esli B == 1; +5\
$1=B
$1=%MID($1,2,10)
list $1+' bottles'
goto R
list '1 bottle'
goto RОтрицательное количество элементов (PHP)
Сегодня утром с разработчиками обсуждали фрагмент кода, где автор очень уж параноидально подошёл к проверке:
if (count($this->to) <= 0) {
$this->validation_errors[] = "Неверный отправитель";
}Проверять возвращает ли функция count значение меньшее нуля действительно странно, но я вдруг подумал — а можно ли в ПХП в припципе заставить эту функцию вернуть такое значение?
Дело в том, что функцию count можно использовать не только с примитивными типами (чаще всего её используют с массивами), но и с объектами, которые реализуют интерфейс Countable.
Оказалось вполне нормально работает:
$var = new class implements \Countable {
public function count()
{
return -1;
}
}
var_dump(count($var)); // выведет int(-1)Выше код написан в синтаксисе ПХП7, который выйдет сегодня, но его можно переписать и на «пятёрку» — надо только дать имя классу.
Одиннадцатое посещение острова сокровищ

Сегодня выехал на пару часов — к сожалению, стал усиливаться ветер, пришлось сворачиваться. Улов: две копейки 1757 года (слово «две» стёрлось, но она отлично опознаётся по расположению остатка надписи), «конина», смятый напёрсток
Леонидом Ильичом, Владимиром Ильичём
Члены Орфографической комиссии, готовившие Свод, обратили внимание на то, что форма «Ильичём» (Лениным), как правило, писалась с «ё» (в частности, такое написание встретилось в одном из писем Н. К. Крупской). Чтобы сохранить орфографическую неприкосновенность В. И. Ленина, было принято «устное» исключение: писать, например, Петром Ильичом (Чайковским), Михаилом Ильичом (Роммом), но Владимиром Ильичём (Лениным). И только так.
Владимира Ильича Ленина поставили в оппозицию всей отечественной орфографии сразу. В полном одиночестве — противу масс. Правило это даже в годы застоя не распространилось шире — например, на «верного ленинца» Л. И. Брежнева (Из газет: «…встали, чтоб приветствовать Политбюро во главе с Генеральным секретарем Леонидом Ильичом Брежневым»; «… одна из участниц войны назвала его (Брежнева) „нашим Ильичом“». Впрочем, что там Л. И. Брежнев, если даже по поводу родных братьев В. И. Ленина не было ясности: писать ли Дмитрием, Александром Ильичём или Ильичом!
Из статьи «Об одном негласном орфографическом исключении» филолога Брониславы Букчиной.
Void в PHP
ПХП7
Я сначала не понял зачем вводить в язык новое ключевое слово, можно было бы использовать для такого указания уже существующее ключевое слово null, но оказалось, что авторы под void имели ввиду, что функция не может вернуть никакого значения:
function returns_null(): void {
return null; // Fatal error: A void function must not return a value
}включая null, потому что это определённо значение, хоть и со специальным смыслом. При этом вот такое работает:
function returns_nothing(): void {
return; // valid
}Таким образом в языке произошло неявное изменение: раньше ситуации с пустым return и с return null не различались, сейчас они будут иметь разный смысл.
Профессиональная деформация
Профессиональная деформация, конечно, существующее явление, у меня нет сомнений в этом, но я всегда посмеивался над людьми, которые применяют это понятие ко мне. Причина такова — я человек увлекающийся, а в мире так много интересного. Например, меня захватило новое хобби — «копательство» и я езжу искать старинные монеты до сих пор, несмотря на то, что остальные давно закрыли сезон.
Такие вещи увлекают меня всерьёз, но немногие хобби держат меня годами с равной интенсивностью. Скажем, я уже давно не играю на гитаре
С работой то же —
И вот я обнаружил у себя следы
Возможно деформацией это станет, когда меня это перестанет раздражать, что, боюсь,
Шкатулка под находки
У нас в Казани

Сам Варламов занялся гончарным делом, посчитав, что достиг в бересте потолка, а его ученики продолжают его дело. Шкатулка просто отличная, ароматно пахнет, добротно выглядит. На крышке просил сделать фрагмент рисунка встречи Святогора и Ильи Муромца Ивана Яковлевича Билибина.

Рисунок мне очень понравился, поэтому заплатил мастеру чуть больше, да и работа сложная, составная — три слоя бересты для объёма. Не знаю где буду хранить находки, когда их станет гораздо больше, но пока, на мой взгляд, шкатулка им очень подходит.
Андреевка в Бугульминском районе
В Андреевке Бугульминского района предки по линии моей фамилии прожили более ста лет. Некоторые потомки семьи переселившейся туда в 1828 году из Средних Апочек Старооскольского уезда, живут там до сих пор. Любопытно, что память поколений сохранила факт переезда, многие из тех, с кем я разговаривал, знают, что их предки переселились
Всего в тот год в Андреевку было переселено довольно много народу — на перепись 1834 года там проживало 37 семей (219 мужчин и 245 женщины), о чём написано в одном из дел (ЦГАСО, ф. 150, оп. 1, д. 24) Самарского архива.
Из заголовка дела можно узнать, что Андреевка стоит на месте более старого населённого пункта с тем же названием и была вновь образована переселенцами:
1834 года Апреля 21 дня Оренбургской губерніи Бугульминскаго уезда Письмянскай волости вновь заведенной деревни Андреевки о состоящихъ в оной мужеска и женска пола однодворцахъ
Правда по картам подтверждение этому мне найти не удалось — возможно у меня
В 1896 году в Андреевке освятили
Однопрестольный деревянный храм был построен по проекту гражданского инженера Э. Кистермана, утверждённым в 1896 году. Он же руководил постройкой. В 1896 году храм был освящен, а строительство колокольни и отделочные работы продолжались до 1902 года.
Вопрос о строительстве церкви был решен на сельском сходе села Андреевки в 1894 году, с этого же времени прихожане собирали деньги. Задержки в строительстве были связаны с нехваткой средств и отсутствием крупных благотворителей. Небольшой деревянный храм выполнен в характерных для конца XIX века в форме эклектики.
В 2007 году церковь сгорела — говорят, внутри
Сейчас село, конечно, умирает — в 2013 году там жило 215 человек, тогда как в 1920 — 1391, фермерское хозяйство в России в упадке, а больше в селе заниматься нечем.
Устал я жить в родном последнем, в тоске по гречневым просторам…
Не в первый раз вижу баталии на тему как спрашивать «кто последний?» или «кто крайний?». Не понимаю в чём вообще вопрос. Это же не синонимы. У очереди безусловно есть первый и последний — это те люди, которые ближе всего к цели и дальше всего от неё.
первый → 🚪🕴🕴🕴🕴🕴🕴🕴🕴🕴← последний
Но, опять же, и крайние у неё тоже есть, это те, кто с краю — первый и последний являются крайними. В большинстве очередей это разные люди.
крайний → 🚪🕴🕴🕴🕴🕴🕴🕴🕴🕴← крайний
Так что спрашивать «кто крайний?», если вы собираетесь присоединиться к очереди, так же неуместно, как и задать тот же вопрос вместо «кто следующий?».
Новое Исаково Бугульминского района
Сегодня произошло примечательное событие — я получил дореволюционную фотографию усадьбы помещика Шулешкина из сельца Новое Исаково (ныне Бугульминский район) — в этом сельце жила семья моего прапрадеда с маминой стороны, крепостного крестьянина Павла Степановича. Фотографию прислал потомок тех самых Шулешкиных.
Фото примечательно тем, что дореволюционных фото этого поселения в интернете нет в принципе, остаётся надеяться только на персональные архивы, которые могли
Так как документов исчезающе мало, с трудом,
Год образования Нового Исакова точно мне неизвестен, но наличествующие материалы дают временную вилку 1834—1850. Верхнюю границу даёт Самарский архив, где я нашёл бумаги переписи 1850 года, нижнюю даёт отсутствие такой же переписи в бумагах
Кстати на этой карте Старое Исаково называется «Васильевская», похожее название — «Васильевка» имело, согласно бумагам Новое Исаково. Я обозначил его будущее расположение, оно легко угадывется по расположению рек:
Как произошло, что два разных населённых пункта, находящихся под боком друг друга, имели такие похожие названия? У меня есть теория, которая может это объяснить.
По всей видимости «Лисьи Горы» — название усадьбы, такой вывод можно сделать из заголовка архивного дела «Документы о ссуде, просимой потомственным дворянином Василием Ивановичем Аничковым, под залог имения при с. Исакове, Лисьи Гирей».
В Самарском архиве есть запись 1799 года о владении «лисьихъ горъ кадета василья исакова — (муже) 77 (женина) 75». Очевидно фамилия Василия Исакова стала названием населённого пункта, а имя — притяжательным названием имения.
Т. е. усадьба Лисьи Горы (чья?) — Васильевская, по имени владельца. Что и написано на карте 1805 года. А название «Исаково» есть на карте 1792 года (что, кстати, даёт верхнюю границу основания этого поселения):
В бумагах 1816 года Василий Исаков уже не упоминается, там владелицей обозначена его родственница Анна Никоноровна Аничкова (в девичестве — Исакова). 8 сентября 1838 года Старое Исаково переходит в наследство её сыну — Василию Ивановичу Аничкову, о чём есть запись на обложке ревизии 1850 года.
А на обложке ревизии Нового Исакова того же года о передаче в наследство не написано, поэтому я считаю, что Василий Иванович и основал это сельцо, перенеся туда свою усадьбу, которая стала называться Васильевка, по его имени. Старая же усадьба вернула себе историческое название — Лисьи Горы.
В 1907 году «потомственный почетный дворянин, проживающий в деревне
Судя по бумагам 1940 года, после революции в Новом Исакове была организована сельскохозяйственная артель «Прогресс», где работали мои предки. Сейчас это маленькая, ничем не примечательная деревня Бугульминского района.
Слово «имплантат» устарело
Слово «имплантат» умерло. Я намедни зубы лечил, побывал в двух клиниках, в обеих разговор шёл об «имплантах» (обсуждали, что делать с одним моим сложным зубом), спросил у обоих медиков — почему они имплантаты называют «имплантами», оказывается, их специально переучивают так говорить.
Пора и мне переучиваться, видимо. Глупо сопротивляться, если основные пользователи понятия переучиваются на другое слово. Не могу не заметить, что «имплант» звучит более логично, так как соответствующий глагол — «имплантировать», а не «имплантатировать».