Существует третий вариант: написать препроцессор, который выведет «end» в отдельной строке, начиная с отступа.Глубокие мыслители, которые предпочитают сжатый код, оказываются правы.
Еще лучше, взломайте рубин, так что это флаг.
Конечно, самое простое решение «выбери бой» - это принятьСоглашение о стиле, что все последовательности концов появляются на одной строке, и обучают синтаксической раскраске отключать их.Для простоты редактирования можно использовать сценарии редактора, чтобы развернуть / свернуть эти последовательности.
От 20% до 25% строк моего кода ruby являются «концом» своей собственной строки, все тривиально выведено из моих соглашений об отступах.Ruby - подобный языку язык, который достиг наибольшего успеха.Когда люди оспаривают это, спрашивая, где все ужасные скобки, я показываю им функцию ruby, заканчивающуюся семью строками лишнего «конца».
Я годами писал код, используя препроцессор lisp для вывода большинства скобок: Aбар '|'открыл группу, которая автоматически закрывалась в конце строки, а знак доллара «$» служил пустым заполнителем, где в противном случае не было бы символов, помогающих вывести группы.Это конечно территория религиозной войны.Лисп / схема без скобок - самый поэтичный из всех языков.Тем не менее, проще просто уменьшить количество скобок, используя раскраску синтаксиса.
Я все еще кодирую с препроцессором для Haskell, чтобы добавить heredocs и по умолчанию все строки сброса в качестве комментариев, все отступы в виде кода.Мне не нравятся комментарии, независимо от языка.