Сага о C++ в трех частях и с одним дополнением

Примечание. Это стихотворение я написал специально для своего доклада на C++ Siberia 2019 «Настоящее и будущее функционального программирования в С++».

Часть 1. Типы и выразительность
Часть 2. Многопоточный код
Часть 3. Паттерны, ООП и бойлерплейт
Дополнение. Rust


Часть 1. Типы и выразительность

Рабочий вечер. Свет экрана.
Из полумрака веет сном.
Пойти бы в бар; но еще рано,
И думать нужно не о том.

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

Рефакторинг - святое дело,
И компилятор был бы друг,
Но за такие типы, зело,
Лишить бы кое-кого рук.

С такими типами всё сложно:
Как ни моля, как ни прося,
В них выразить никак не можно
Все то, что допустить нельзя.

На все нечистое в программе
Наш компилятор промолчит.
Дебажте код, ищите сами, -
Пока у вас не пригорит.

Часть 2. Многопоточный код

Снежок кружится буйно, рьяно
В февральской стуже за окном.
Пойти бы спать... Но еще рано,
И думать нужно не о том...

...Проклятый баг порушил треды,
Меняя данные не так,
Дедлок - его родное кредо,
А рейс кондишн - его стяг.

Он из мутабельных орудий
Ведет прицельную стрельбу.
И хочет, пакостный Иудий,
Потоки закопать в гробу.

Он знает, что в войне с порядком
Хитрей прикинуться судом,
И огласить в вердикте гладком,
Кто виноват в “порядке” том.

Кто по неведенью подходов
Пихал везде ансейфный каст.
Кто расплодил god-like уродов,
И создал из лапши балласт.

Кто был в безумии нездравом,
Когда, сжигая все мосты,
Ходил с мутабельным уставом
В многопоточный монастырь...

...Такой невиданной “непрухи”
Ты не испытывал давно.
Проблемы множатся как мухи,
Код превращается в беду.

Часть 3. Паттерны, ООП и бойлерплейт

На фотографии лукаво
Смеется девушка с зонтом.
Зовет и манит, словно пава,
Но думать нужно не о том.

Еще не близок час успеха,
Пока, разъятый на болты,
Продукт страдает в недрах цеха
От гаечной неполноты.

На этой фабрике объекты
Распухли хуже макарон,
И по примеру тайной секты
Приспособленец там внедрен.

Его задача - быть на страже
Всего, что к разуму близко.
Всего, где смысл есть, и даже
Где смысл видеть нелегко.

Подлец сражается с Оккамом,
И предает талант огню.
С ним поцелуи станут срамом,
А разум - сгублен на корню.

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

Хитрец старается подсунуть
Детали крайне сложных форм.
Ему запутать всё - раз плюнуть,
Он в этом спец на много фор...

...Вот так, по прихоти злодея
В стране волшебной ООПея
Веками длится эпопея,
Где в главной роли - ахинея.

Дополнение. Rust

В углу шевелит мягко лапа
Настенным часовым котом,
Мерцает лавовая лампа,
Но думать нужно не о том.

О чем же думать?.. Ускользает
Во тьму ночную мысли нить.
Реальность плавится и тает,
И смыслов больше не добыть.

Приходит сон.
    А там стоит
        Сундук,
            весь ржавчиной побит:
Ни мил, ни груб, не мал, не гроб,  
Прямой как куб, с замком из скоб.

Сундук открыт.
    А в нем растет
Цветок, прекрасный как рассвет.
Он мягким пламенем покрыт,
И испускает яркий свет.

Горит растенье неспроста.
Контрастный тон его огня
Страстей исполнен. И чиста
Его немая болтовня.

Своим теплом он растворит
Усталость от пустых речей.
Он простоту боготворит,
И консистентность мелочей.

Он возвещает о краях,
Где нет губительных чудес.
Там у отъявленных нерях
Не выйдет поломать процесс.

Там безопасность и комфорт, 
Там нет ни боли, ни стыда.
Там счастьем платят наперед,
И возраст - не беда.

Там даже странный ростовщик
Подарит гору серебра.
Он не растратою велик,
А сохранением добра…

...Таков был сон. Проснувшись, ты
Вернулся в офисную ночь,
И был теперь в плену мечты
Неврастению превозмочь.

Новосибирск, январь 2019

Добавить комментарий

Заполните поля или щелкните по значку, чтобы оставить свой комментарий:

Логотип WordPress.com

Для комментария используется ваша учётная запись WordPress.com. Выход /  Изменить )

Google photo

Для комментария используется ваша учётная запись Google. Выход /  Изменить )

Фотография Twitter

Для комментария используется ваша учётная запись Twitter. Выход /  Изменить )

Фотография Facebook

Для комментария используется ваша учётная запись Facebook. Выход /  Изменить )

Connecting to %s