Python с 'end' как в Ruby? Хак, который заставит вас улыбнуться

Энтузиаст предлагает добавить в Python ключевое слово 'end' для завершения блоков — и это не шутка, а хитрый хак.
Помните, как в Ruby или Lua блоки заканчиваются элегантным end, а не отступами? Один разработчик решил, что Python тоже заслужил такую роскошь, и наваял хак, который позволяет писать end вместо того, чтобы следить за пробелами. Спойлер: это не патч к CPython, а ловкий трюк с декораторами и контекстными менеджерами.
Идея проста: обернуть блок в конструкцию, которая на __exit__ проверяет, не вызван ли end. Выглядит как магия, но на деле — костыль с запахом. Автор честно признаёт: это не для продакшена, а для развлечения и эксперимента. Но как же приятно было бы написать:
if condition:
print('Hello')
end
Конечно, сообщество Python вряд ли примет такое — Дзен Python гласит: «Явное лучше неявного», а отступы уже стали визитной карточкой языка. Но сам факт, что кто-то заморочился, вызывает уважение. В конце концов, мы все любим хакерские подходы, даже если они бесполезны.
Комментарий студии METABYTE: Хотя мы не советуем использовать такие хаки в боевых проектах (представьте, как ваш коллега будет искать этот end в code review), это отличный пример того, как можно расширить возможности языка для прототипирования. Если вам нужен надёжный код — мы поможем, а если хотите поэкспериментировать — дерзайте!