Здравствуйте, Qbit86, Вы писали:
Q>Здравствуйте, AndrewVK, Вы писали:
AVK>>1) Вставляете ли вы после последней фигурной скобки в конце файла перевод строки? AVK>>2) Если да, то зачем?
Q>Предпочитаю ограничители разделителям. Из «общих» соображений: последовательность вида { a; b; c; } всегда проще генерировать, чем последовательность вида (a, b, c). Возможно, поэтому в C# разрешено ставить запятую перед закрывающей фигурной скобкой в enum'ах и непустых списках инициализации.
О да. +100.
Как меня задолбало спотыкаться в Erlang'е то на то, что надо добавить запятую, то не добавлять, то добавить ';', то не добавлять...
И в диффах мура — по сути строка не изменена, но добавился после неё новый элемент — дописывай запятую.
Если же все разделители выносить на отдельные строки — читать это станет невозможно.
нэнавыжу
И главное — ничего в синтаксисе не сломается, если переделать на ограничители. Или только пару мелочей подправить. Но не хотят.
Здравствуйте, netch80, Вы писали:
N>Если же все разделители выносить на отдельные строки — читать это станет невозможно. N>нэнавыжу
Да, когда начинают строки с символов пунктуации (выстраивают запятые в линеечку или ещё какие-нибудь геометрические узоры городят) — хочется взять и...
Здравствуйте, Qbit86, Вы писали:
Q>Здравствуйте, netch80, Вы писали:
N>>Если же все разделители выносить на отдельные строки — читать это станет невозможно. N>>нэнавыжу
Q>Да, когда начинают строки с символов пунктуации (выстраивают запятые в линеечку или ещё какие-нибудь геометрические узоры городят) — хочется взять и...
Ну к этому я более терпим — потому что это было стандартом синтаксиса Фортрана (у оператора продолжения — в 6-й позиции не пробел, туда ставили всякие звёздочки и запятые. Хотя в современных языках это выглядит ужасно. Но главное — что оно не решает проблему — ну заменили запятую в конце на запятую в начале, всё равно строка испорчена.
Здравствуйте, netch80, Вы писали:
Q>>Да, когда начинают строки с символов пунктуации (выстраивают запятые в линеечку или ещё какие-нибудь геометрические узоры городят) — хочется взять и...
N>Ну к этому я более терпим — потому что это было стандартом синтаксиса Фортрана (у оператора продолжения — в 6-й позиции не пробел, туда ставили всякие звёздочки и запятые. Хотя в современных языках это выглядит ужасно. Но главное — что оно не решает проблему — ну заменили запятую в конце на запятую в начале, всё равно строка испорчена.
Ну, в контексте диффов и «порченных строк» (впрочем, меня это никогда особо не беспокоило), если строка начинается с запятой, то добавление после неё следующей строки не приводит к изменению текущей.
Здравствуйте, Qbit86, Вы писали:
Q>>>Да, когда начинают строки с символов пунктуации (выстраивают запятые в линеечку или ещё какие-нибудь геометрические узоры городят) — хочется взять и...
N>>Ну к этому я более терпим — потому что это было стандартом синтаксиса Фортрана (у оператора продолжения — в 6-й позиции не пробел, туда ставили всякие звёздочки и запятые. Хотя в современных языках это выглядит ужасно. Но главное — что оно не решает проблему — ну заменили запятую в конце на запятую в начале, всё равно строка испорчена.
Q>Ну, в контексте диффов и «порченных строк» (впрочем, меня это никогда особо не беспокоило), если строка начинается с запятой, то добавление после неё следующей строки не приводит к изменению текущей.
Зато если убрать все перед ней — то придётся изменить. Пустые запятые в начале — даже ты вряд ли потерпишь.:))
А порченые диффы распыляют внимание. Иногда это таки важно.
Здравствуйте, netch80, Вы писали:
N>Зато если убрать все перед ней — то придётся изменить. Пустые запятые в начале — даже ты вряд ли потерпишь.:))
С другой стороны, «пустые запятые» в начале в общем случае могут быть не запятыми, как в случае символа «или» при паттерн-матчинге. Там он полне уместен, и работает как ограничитель (слева), но может быть и разделителем (между), если список петтернов короткий. Профит!