The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Режим отображения отдельной подветви беседы [ Отслеживать ]

Оглавление

Дрю ДеВолт представил язык системного программирования Hare, opennews (?), 25-Апр-22, (0) [смотреть все]

Сообщения [Сортировка по времени | RSS]


149. "Дрю ДеВолт представил язык системного программирования Hare"  +/
Сообщение от keydon (ok), 25-Апр-22, 22:38 
>> Что ж они не додумаются парсить по пробелам?
> То что в результате тапнешь пару раз пробел или бэкспейс случайно, засэйвишь...
> ухтыблин?!?
> А с () {} ты таки случайно логику не ломанешь. Если стереть
> скобку или лишнюю влепить, COMPILE ERROR и сразу понятно что что-то
> пошло не так.

Точно также как и с пробелами. Никакой разницы. Только со скобками ты расставляешь {} для компилятора И пробелы для себя, а с пробелами сразу для обоих. И не мучаешь ни себя, ни компилятор лишней когнитивной нагрузкой.

> Питонистам про системщину вообще лучше не пищать, у них статический анализ а
> дауне, а все ашипки случаются рантайм. Представьте себе кернел который при
> случае вываливается нахрен с исключением, поймете почему это людям не нравится.

Логическая ловушка не засчитана. Парсинг никак не связан с особенностями интерпретатора и компилятора. Ничего не мешает использовать пробелы вместо скобок. Скобки нужны в исключительных случаях (и то не факт), а скобки по умолчанию просто мусор дублирующий пробелы.

Ответить | Правка | К родителю #104 | Наверх | Cообщить модератору

170. "Дрю ДеВолт представил язык системного программирования Hare"  +1 +/
Сообщение от Аноним (-), 26-Апр-22, 00:40 
> Точно также как и с пробелами. Никакой разницы. Только со скобками ты
> расставляешь {} для компилятора

Я ими маркирую границы логических и структурных блоков, как правило имеющих какой-то самодостаточный смысл. Если эти границы нарушены - я знаю что где-то вышел нетривиальный факап и это место в коде точно требует усиленного внимания и проверки.

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

К сожалению этот способ маркировки блока кода не поймает вышеупомянутые факапы. А вот по части скобок компилеры довольно привиредливы: должно совпадать, 1 в 1. Лишняя или недостающая скобка фатальны и рушат сборку. Случайно продолбаться так чтобы парность сохранилась - маловероятно. А с пробелами достаточно selection покилять или пробел необдумано тапнуть.

> Логическая ловушка не засчитана. Парсинг никак не связан с особенностями интерпретатора
> и компилятора. Ничего не мешает использовать пробелы вместо скобок. Скобки нужны
> в исключительных случаях (и то не факт), а скобки по умолчанию
> просто мусор дублирующий пробелы.

Системщикам просто не нравятся дурные факапы на ровном месте, они предпочитают компилер который будет ловить явные продолбы. Туда же и статические типы. Да, аннотирование намерений требует добавочно попечатать. Зато не требует потом пытаться отдебажить хрен знает что неизвестно где лишний раз.

Ответить | Правка | Наверх | Cообщить модератору

181. "Дрю ДеВолт представил язык системного программирования Hare"  +/
Сообщение от keydon (ok), 26-Апр-22, 01:29 
> Я ими маркирую границы логических и структурных блоков, как правило имеющих какой-то
> самодостаточный смысл. Если эти границы нарушены - я знаю что где-то
> вышел нетривиальный факап и это место в коде точно требует усиленного
> внимания и проверки.

Ты также можешь пробелами и переносами маркировать логические и структурные блоки и без лишних отвлекающих символов.

> К сожалению этот способ маркировки блока кода не поймает вышеупомянутые факапы. А
> вот по части скобок компилеры довольно привиредливы: должно совпадать, 1 в
> 1. Лишняя или недостающая скобка фатальны и рушат сборку. Случайно продолбаться
> так чтобы парность сохранилась - маловероятно. А с пробелами достаточно selection
> покилять или пробел необдумано тапнуть.
> Системщикам просто не нравятся дурные факапы на ровном месте, они предпочитают компилер
> который будет ловить явные продолбы. Туда же и статические типы. Да,
> аннотирование намерений требует добавочно попечатать. Зато не требует потом пытаться отдебажить
> хрен знает что неизвестно где лишний раз.

Ты сначала топишь за тяпляпность типа сделать лишний пробел это запросто, нормально и должно быть обязательно прощено. Но тут же топишь за явное аннотирование, фатальность при отсутствии символа и ранний дебаг.
Причем пробелы это второй вариант (подталкивает к аккуратности)(хотя ты конечно подразумевал наоборот). А скобки это первый (подталкивает к разгильдяйству).
Но даже если смотреть с позиции разгильдяя, то 4 пробела все равно лучше чем парные кавычки. Парные кавычки вполне возможно (хотя и сложно) нажать случайно (4 раза нажать пробел ИМХО сложнее, а нажать по 4 раза на каждой строчке в блоке еще тяжелее), да и расположение пробела на большинстве клавиатур существенно удобнее чем расположение клавиш кавычек (а в некоторых их и нет в первом слое), обычно не видно где кавычки начинаются и где кончаются (и соответственно какой блок ты читаешь, в отличии от пробелов), нередко их дополняют клавиатуры и IDE(что там про явное аннотирование?), новички часто бесятся из-за них и начинают пихать их как попало лишь бы скомпилилось, опять же в разных стилях кавычки ставятся по-разному (в конце или на следующей строке) что сильно влияет на читаемость в разных проектах, в конце концов кавычки занимают лишние символы и строки, что опять же влияет сколько кода ты можешь просмотреть без прокрутки. Зачем все эти проблемы? Они правда тебе нужны?

Ответить | Правка | Наверх | Cообщить модератору

284. "Дрю ДеВолт представил язык системного программирования Hare"  +/
Сообщение от Аноним (-), 27-Апр-22, 18:32 
> Ты также можешь пробелами и переносами маркировать логические и структурные блоки и
> без лишних отвлекающих символов.

Так оно не ловит мелкие факапы когда намерения и то что есть по факту разошлись. Ну, мало ли, хотел я стереть вон то, но было выделение и стерлось не то что я планировал. А тут меня что-то отвлекло, например, и это было прошляплено.

В curly bracket я при нарушении границ блоков поимею компил егор и пойду детально разбираться что и почему у меня отъехало. Зная что тут совершенно точно какая-то лажа и надо детально все проверить. А в вон том случае - логика тихо отедет. Без всяких егоров. А потом, когда все уже собрано, запущено и типа-работает - я может быть узнаю что оно фигню творит. Если не повезет, в редкой ветке, узнаю через годик, когда оно внезапно обгадится - в ситуации когда я даже не знаю как вычислить где оно такое красивое.

А сами по себе пробелы за меня так то большая часть прогерских редакторов сами влепит, мне достаточно как раз намерения сделать блок скобками отметить - и все. Форматирование даже несложные редакторы так то могут. Более того - в curly bracket так то и полный reflow кода можно, автоматикой, попробуйте так с вашими пробелами ваще...

> Ты сначала топишь за тяпляпность типа сделать лишний пробел это запросто, нормально
> и должно быть обязательно прощено. Но тут же топишь за явное
> аннотирование, фатальность при отсутствии символа и ранний дебаг.

Я топлю за то чтобы ловить максимум факапов в компилтайме/аналитике, чтобы это меня не имело в рантайме.

> Причем пробелы это второй вариант (подталкивает к аккуратности)(хотя ты конечно подразумевал
> наоборот).

Есть antibug технологии, помогающие вычислить явно кривые действия человека. Пробелы таковыми не являются, а скобки - вполне.

> А скобки это первый (подталкивает к разгильдяйству).

С какого бы раза? Они лишь помогают поймать явную лажу если она все же вышла. И так то код на питоне дохнет с жутким трейсом чуть менее чем на любой пшик, не им про разгильдяйство вещать. Ладно б там хрустики вылезли но у них curly bracket.

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

Намного хуже - при редактировании напортачить проще. А вот парные элементы случайно сделать корректно - довольно маловероятно. А какого бы черта теорвер не должен быть в мою пользу?

> Они правда тебе нужны?

Мне нравится визуальное выделение блоков и то что автоматика проверит парность элементов, делая хотя-бы минимальный чек что это хотя-бы похоже на задеклареное намерение и что оно не было случайно порушено. ИМХО делать логику пробелами - неудачный антипаттерн с точки зрения отлова явных багов.

Ответить | Правка | Наверх | Cообщить модератору

288. "Дрю ДеВолт представил язык системного программирования Hare"  +/
Сообщение от keydon (ok), 27-Апр-22, 20:12 
> Так оно не ловит мелкие факапы когда намерения и то что есть по факту разошлись. Ну, мало ли, хотел я стереть вон то, но было выделение и стерлось не то что я планировал. А тут меня что-то отвлекло, например, и это было прошляплено.

Почему вы упорно считаете что лишний/удаленный пробел это нормально? Почему вы считаете что плохо отформатированный код должен запускаться?
Ну разошлись ваши намерения и ваш тремор рук, получите ошибку, сразу ее исправите. Даже лучше чем со скобками где этот пробел найдете уже при проверке линтером.

> В curly bracket я при нарушении границ блоков поимею компил егор и пойду детально разбираться что и почему у меня отъехало.

С пробелами тоже самое, только еще строже.

> Зная что тут совершенно точно какая-то лажа и надо детально все проверить. А в вон том случае - логика тихо отедет. Без всяких егоров. А потом, когда все уже собрано, запущено и типа-работает - я может быть узнаю что оно фигню творит. Если не повезет, в редкой ветке, узнаю через годик, когда оно внезапно обгадится - в ситуации когда я даже не знаю как вычислить где оно такое красивое.

Не, это так не работает. Во-первых, вы не можете где угодно указать блок, как не можете где угодно поставить фигурные скобки. Просто получите ошибку как и со скобками. Во-вторых, вы сами обозначаете разделитель. Если вы пишите большой скрипт, то ставите 4 пробела. Если вы случайно поставите 4(!) пробела, то вы также случайно сможете и кавычки поставить. Если вы сделаете 1-3 или 5+ пробелов то получите ошибку. В-третьих, если вы пишите большой серьезный код, то добавьте линтер, он вас еще и новую строку заставит по стандарту ставить после блока. Так что шансы ошибиться и добавить/убавить пробел стремятся к нулю. А шанс запутаться в {{{{}}}}} (парные? уже посчитали? с пробелами это сразу видно) и вовсе нулевой.

> > А сами по себе пробелы за меня так то большая часть прогерских редакторов сами влепит, мне достаточно как раз намерения сделать блок скобками отметить - и все. Форматирование даже несложные редакторы так то могут.

Тем более. Зачем вам в таком случае лишние символы в виде скобок?

> Более того - в curly bracket так то и полный reflow кода можно, автоматикой, попробуйте так с вашими пробелами ваще...

За вас редакторы итак эти пробелы ставят, почему же вы считаете что в других случаях автоматика не справится? Это абсолютно такой же разделитель как скобки, автоматика работает точно также.

> Я топлю за то чтобы ловить максимум факапов в компилтайме/аналитике, чтобы это меня не имело в рантайме.

Тогда вы должны топить за пробелы, потому что они именно это и делают.

> Есть antibug технологии, помогающие вычислить явно кривые действия человека. Пробелы таковыми не являются, а скобки - вполне.

Как раз наоборот. Если делать по стандартам с автоформатированием то и то и другое прекрасно справляется, только пробелы чище, компактнее, понятнее. Но если делать без форматирования то пробелы не позволяют вольностей, а скобки позволяют. Опять же пробелы ставятся однозначно, со скобками как миниум есть 2 распространенных стандарта как ставить скобки. Даже если вы договорились ставить скобки на той же строке, не факт что в проекте который вы используете, не делают по-другому.

> С какого бы раза? Они лишь помогают поймать явную лажу если она все же вышла.

Скобки: Лишний пробел поставил. Лажа, форматирование страдает. Все собирается и работает, отправляется в продакшн.
Пробелы: Лишний пробел поставил. Лажа, ничего не собирается, иди дорабатывай.

Скобки: Нарушил форматирование, указал скобки в конце строки через тучу пробелов, ревьювер не заметивший горизонтальную прокрутку этого не заметил (что есть еще пробелы не видит), бэкдор внедрен (антибаг технологии, ага)
Пробелы: Такое в принципе невозможно, потому что разделитель однозначно определен и в начале строки.

> И так то код на питоне дохнет с жутким трейсом чуть менее чем на любой пшик, не им про разгильдяйство вещать. Ладно б там хрустики вылезли но у них curly bracket.

Опять попытка увести разговор в сторону. У питонистов трейс на любой пшик не из-за пробелов. Но мы сейчас про пробелы говорим, а не про методику обработки исключения и питоновскую философию.

> Намного хуже - при редактировании напортачить проще. А вот парные элементы случайно сделать корректно - довольно маловероятно. А какого бы черта теорвер не должен быть в мою пользу?

Ну и определенное число пробелов наклепать в нужном месте тоже весьма маловероятно.

> Мне нравится визуальное выделение блоков

Вы визуально выделяете блоки не скобками, а пробелами, даже если используете скобки.
> и то что автоматика проверит парность элементов, делая хотя-бы минимальный чек что это хотя-бы похоже на задеклареное намерение и что оно не было случайно порушено.

Вы же выше сами же пишите что автоматика же эту парность и делает. То есть ваши намерения с автоподстановкой скобок это нажать '{'(один случайный символ). Без автоподстановки это два символа '{' '}' в разных местах(фактически 3 случайных символа с учетом навигации). С пробелами без автоподстановки вам нужно сделать 4 случайных символа, а то и больше.

> ИМХО делать логику пробелами - неудачный антипаттерн с точки зрения отлова явных багов.

ИМХО разделять код на логический и визуальный - неудачный антипаттерн с точки зрения отлова явных багов

Ответить | Правка | Наверх | Cообщить модератору

290. "Дрю ДеВолт представил язык системного программирования Hare"  +/
Сообщение от Аноним (-), 27-Апр-22, 22:26 
> Почему вы упорно считаете что лишний/удаленный пробел это нормально?

Потому что людям свойственно ошибаться и вон то - легко посадить при кодинге случайно, не имея на самом деле в виду. Явная маркировка начала-конца логического блока позволяет ловить немало дурных случаев такого плана, когда оно вдруг бай и не совпадает. Ну как, если например я пробел тапнул на выделении - и там даже улетел какой-то кусок блока, шансы что в выделении идеально убьется по парным скобкам и ошибки не будет - мизерный. Значит я буду тут же послан компилером, пойму что все испортил и пойду разбираться.

> Почему вы считаете что плохо отформатированный код должен запускаться?

Ну я бы в принципе кидал бы компил варнинг при подозрительном форматировании, а с точки зрения приоритетов меня корректность поведения кода и его соответствие задумке волнует все же больше эстетики. Поэтому вот так.

> Ну разошлись ваши намерения и ваш тремор рук, получите ошибку, сразу ее
> исправите. Даже лучше чем со скобками где этот пробел найдете уже
> при проверке линтером.

А при чем тут тремор рук, если в редакторе селекшн был, я про него забыл и что-то тапнул? Ну и получил что-то unspecified вместо того чего на самом деле хотел. И таки очень кстати если автоматика поймает подозрительное место и сообщит что я сделал фигню.

То-есть это не отменяет нужды быть внимательным самому. Но компьютер должен помогать человеку, а не только п-лями в стойло его строить.

Смотри, в сях например указатели это кусок проблем если быть невнимательным. И там проблемы в том числе и с анонсом намерений дла анализа/компилера. Но кроме минусов есть плюсы. Это дико эффективная технология. Избегающая лишних копирований - что актуально, особенно на больших объемах данных или если скорость критична. Поэтому tradeoff: мы теряем в надежности, но получаем быстрый компактный код. А у тебя - не tradeoff. Оно только делает мозг, ставит в стойло, но ничего не привносит. Значит нафиг.

А что до печати - не, в програмерских эдиторах лишних кнопок жать может и не требоваться, при намерении слепить блок он может и автоматом с парой скобок и потребным форматированием (например вычисленным по позиции 1-й скобки) быть сделан. Так что это проблема для юзеров ноутпада, которые все-равно много не напрогают. Хотя-бы за отсутствием подсветки синтаксиса.

> С пробелами тоже самое, только еще строже.

При том эта строгость ничего кроме эстетики не привносит. Я не вебмакака чтобы в стойло становиться ради декоративно-эстетических целей. Если там будет что-то системное, крутое, можно подумать.

> Не, это так не работает.

Ну, вообще, это по моему опыту. Если меня заворачивают с скобкой - я таки где-то напортачил и скорее всего логика поломана и надо детально все перепроверять.

> Во-первых, вы не можете где угодно указать блок,

Вообще-то в сях - можно почти где угодно, так что при желании независимые логические блоки можно явно хайлайтить чуть активнее чем это обычно делают. Это не значит что это всегда нужно делать. Оформлять блок имеет смысл там где ... уместен логически выделенный блок, более-менее самодостаточный. Но если хочется - можно и по приколу почти везде делать. Но лучше не выпендриваться, код должен быть понятен другим, все что сверх того - нафиг надо.

> как не можете где угодно поставить фигурные скобки. Просто получите
> ошибку как и со скобками.

Вы вообще на сях программировали?

> Во-вторых, вы сами обозначаете разделитель. Если
> вы пишите большой скрипт, то ставите 4 пробела.

Я стараюсь не писать большие скрипты, предпочитая *никсвэйный подход. То есть небольшие эффективные качественные программы, при нужде объединяемые небольшими скриптами по месту. Модуляризация. Конечно это не всегда катит. Но мудрость в идеях древних есть. В отличие от вебмакак и питоняш, от которых если мне что и надо - чтобы они перестали замусоривать поиск своими поделиями.

> Если вы случайно поставите 4(!) пробела, то вы также случайно сможете и кавычки поставить.

Так если я левые кавычки/скобки влеплю - буду послан. Их надо именно парно вкатить/стереть, и вероятность нечаянно сделать в виде когда оно будет сожрано как что-то валидное довольно низкая. В этом весь пойнт и состоит.

> Если вы сделаете 1-3 или 5+ пробелов то получите ошибку.

Обычно прогерские редакторы втыкают сразу эн пробелов, для разгона эффективности прогера, так что ну так себе аргумент. Не буду же я 4 раза на уровень форматирования пробел сам жать, право? Я что, обезьяна?

> что шансы ошибиться и добавить/убавить пробел стремятся к нулю. А шанс
> запутаться в {{{{}}}}} (парные? уже посчитали? с пробелами это сразу видно)

1) Ну ващет за мена это компилер посчитает.
2) Лично мне нравится примерно так:


{
    abcd();
    cdef();
    {
        efgh();
        jklm();
    }
}

3) Если мне чей-то синтаксис не нравится, я могу ему reflow в автоматическом режиме сделать при желании. И от дурно поставленых скобок голова будет болеть у компилера или парсера.

> Тем более. Зачем вам в таком случае лишние символы в виде скобок?

Они удачно хайлайтят структуру блока и логические сущности, жестко указывая где задумано начало и конец этого блока. И парой случайных ошибок редактиврования сломать это в виде когда автоматика сие проглотит - довольно трудно.

> За вас редакторы итак эти пробелы ставят, почему же вы считаете что
> в других случаях автоматика не справится?

Потому что явный маркер начала-конца блока отдельным символом - не встречающимся в других случаях - как-то эффективнее и надежнее в качестве надежного разграничения логических блоков.

> Это абсолютно такой же разделитель как скобки, автоматика работает точно также.

Только вот требования попарности нет, а пробелы встречаются при нормальном курсе событий, поэтому сломать это нечаянно - куда проще.

> Тогда вы должны топить за пробелы, потому что они именно это и делают.

Вообще, получить warning при подозрительном форматировании кода - почему бы и нет? На самом деле нормальный фичреквест.

> Как раз наоборот. Если делать по стандартам с автоформатированием то и то
> и другое прекрасно справляется, только пробелы чище, компактнее, понятнее.

Для меня выделение логических блоков отдельными символами как-то лучше схватывается. Алсо хайлайт парных скобок - штука в редакторах весьма типовая, мне так нравится.

> Но если делать без форматирования то пробелы не позволяют вольностей, а скобки позволяют.

Это чисто декоративная проблема, в то время как слом логики при ошибке редактирования становится уже технической проблемой. Для меня логическая корректность кода приоритетнее эстетики, хотя, конечно, красивый код имеет больше предпосылок к тому чтобы его правильно поняли.

> Опять же пробелы ставятся однозначно, со скобками как миниум есть 2
> распространенных стандарта как ставить скобки.

А вон ту задачу я вообще могу более 9000 способов решить. Это, типа, плохо?

> на той же строке, не факт что в проекте который вы используете, не делают по-другому.

Я могу с этим жить. И если им так больше нравится - ну, я не парюсь особо, прогерские редакторы все равно культурно это все сделают.

> Скобки: Лишний пробел поставил. Лажа, форматирование страдает.

Это чисто эстетическая проблема, сама по себе к факапам не ведет.

> Все собирается и работает, отправляется в продакшн.

А может и не отправляется. Кому сильно надо могут ревью и анализаторы развесить.

> Пробелы: Лишний пробел поставил. Лажа, ничего не собирается, иди дорабатывай.

Но отъезд логики на ошибке редактирования оно не поймает, от оригинала намерений ничего не осталось, и в целом удачи понять как оно было задумано. Сломать так curly bracket все же сложно и маловероятно.

> не заметивший горизонтальную прокрутку этого не заметил (что есть еще пробелы
> не видит), бэкдор внедрен (антибаг технологии, ага)

Ващет гнать такого ревьюера надо. Гит на такие вещи например дико кислотные цвета рисует в консоли в git log -p и прочих git diff. Я не знаю как это можно не увидеть, от этого глаза сразу вытекают.

Более того - если у ревьюера не вызвал вопрос пустой блок/строки - это как минимум странно. А, да, я еще так то код немного ревьюю другим. Это для тебя ревьюеры божества, ставящие таких как ты в стойло. А для меня одни из равных.

> Пробелы: Такое в принципе невозможно, потому что разделитель однозначно определен и в
> начале строки.

Тем не менее пример довольно странный - бэкдор очень паливный, ибо пустые строки в логическом блоке очень бросаются в глаза. Их там быть не должно.

Алсо, в минимально серьезном процессе будет автоматический чекер рубящий просто по критерию длины строки. А потому что никто не нанимался 8К мониторы всем вообще кодерам на планете покупать только потому что у одного тела видите ли 250 символов мелким шрифтом на экран лезет.

> Опять попытка увести разговор в сторону. У питонистов трейс на любой пшик
> не из-за пробелов. Но мы сейчас про пробелы говорим, а не
> про методику обработки исключения и питоновскую философию.

У питонистов вообще статический анализ в зачаточном состоянии. И обработка ошибок. Поэтому вообще все пихонскрипты рассыпались при малейшем тыкании палочкой. А зачастую и сами по себе как апгрейдер убунты, тот позорный случай когда руками проще и надежнее чем таким скриптом.

> Ну и определенное число пробелов наклепать в нужном месте тоже весьма маловероятно.

Чего бы? А в прогерском редакторе скорее 1 кнопой, не буду же я 4 пробела мануально, право?

> Вы визуально выделяете блоки не скобками, а пробелами, даже если используете скобки.

Скобки очень хорошо отделяют и подчеркивают это. И жестко маркируют задуманные границы блока. Даже плюс-минус пара пробелов - все еще позволяет восстановить задуманный вид кода и я все еще вижу именно ту логику которую задумал кодер. А вот грохнув пробелы я уже и логику убиваю. Это некая избыточность - но она обеспечивает дополнительную надежность, сменить логику придется явно. А нечаянно - скорее всего компил егор.

> Вы же выше сами же пишите что автоматика же эту парность и делает.

Оно либо не повлияет ни на что кроме эстетики либо даст компил егор. Однако вот именно логику кода сломать оно не сможет и баста. И мы всегда будем видеть что на самом деле задумано. Ну как, начинка вон того блока не переедет в этот блок автоматически сама по себе, хоть там что. Правильно перекинуть блок кода с одного сегмента в другой, ничего не сломав, нечаянно - ну, это из области фантастики.

> ИМХО разделять код на логический и визуальный - неудачный антипаттерн с точки
> зрения отлова явных багов

ИМХО дублирование декларации намерений делает это устойчивее к ошибкам редактирования как раз. И чаще позволяет восстановить задумку испорченного кода как раз. Ну как, блочные операции случайно сделать в правильном виде - черт знает, у меня так не получалось. Чтобы код попал в другой блок с другим уровнем вложенности другого блока надо очень кастомное действо, деликатно выбрав правильные границы. Иначе компил егор.

Вообще идея что я могу менять принадлежность кода тому или иному блоку/уровню вложенности пробелом - не кажется мне удачной, слишком просто порушить незапланировано, а бонусом намерения автора полностью утрачены и разве что в git или бэкап идти смотреть что там было, если, конечно, это все есть.

Ответить | Правка | Наверх | Cообщить модератору

297. "Дрю ДеВолт представил язык системного программирования Hare"  +/
Сообщение от keydon (ok), 28-Апр-22, 03:36 
> Потому что людям свойственно ошибаться и вон то - легко посадить при
> кодинге случайно, не имея на самом деле в виду. Явная маркировка
> начала-конца логического блока позволяет ловить немало дурных случаев такого плана, когда
> оно вдруг бай и не совпадает. Ну как, если например я
> пробел тапнул на выделении - и там даже улетел какой-то кусок
> блока, шансы что в выделении идеально убьется по парным скобкам и
> ошибки не будет - мизерный. Значит я буду тут же послан
> компилером, пойму что все испортил и пойду разбираться.

Похоже ты сектант. То ты топишь за акууратность и еррор, то "случайну уберу пробел, компиль без ошибок". Походу тебе ни то ни другое не надо, лишь бы "пробелов не было" и находу пытаешься придумать вымышленные проблемы, которых (еще раз напомню) нет.

> Ну я бы в принципе кидал бы компил варнинг при подозрительном форматировании,
> а с точки зрения приоритетов меня корректность поведения кода и его
> соответствие задумке волнует все же больше эстетики. Поэтому вот так.

Кидай ошибку при форматировании и нет никаких проблем с пробелами. Я уже в очередной раз тебе об этом пишу, но ты упорно не читаешь.

> А при чем тут тремор рук, если в редакторе селекшн был, я
> про него забыл и что-то тапнул? Ну и получил что-то unspecified
> вместо того чего на самом деле хотел. И таки очень кстати
> если автоматика поймает подозрительное место и сообщит что я сделал фигню.

Если говорить про одинарный пробел, то также как и с кавычками. Если говорить про любой символ, то вы так и [10] в [1] можете превратить и Get в Set, так что не вижу смысла расусоливать на эту тему.

> То-есть это не отменяет нужды быть внимательным самому. Но компьютер должен помогать
> человеку, а не только п-лями в стойло его строить.

Вот именно. И тем более компьютер мешать не должен. Блоки кавычками мешают.

> Смотри, в сях например указатели это кусок проблем если быть невнимательным. И
> там проблемы в том числе и с анонсом намерений дла анализа/компилера.
> Но кроме минусов есть плюсы. Это дико эффективная технология. Избегающая лишних
> копирований - что актуально, особенно на больших объемах данных или если
> скорость критична. Поэтому tradeoff: мы теряем в надежности, но получаем быстрый
> компактный код. А у тебя - не tradeoff. Оно только делает
> мозг, ставит в стойло, но ничего не привносит. Значит нафиг.

Наоборот. Нет лишних символов, чище код, проще читать, больше сфокусирован на действии, а не на форматировании или стиле. В надежности не теряем, код становится еще компактнее чем с кавычками. Никакого трейдоффа тут нет. Просто раньше ты носил в рюкзаке бесполезный камень, а теперь его выбросил. Так что либо пробелы в твоей аналогии это указатели (тк они максимально эффективные), либо лучше чем указатели.

> При том эта строгость ничего кроме эстетики не привносит. Я не вебмакака
> чтобы в стойло становиться ради декоративно-эстетических целей. Если там будет что-то
> системное, крутое, можно подумать.

Начинается. Сначала за безопасность. Теперь вот "ради декоративно-эстетических целей" не готов.
Тогда ради однообразия, сокращения размеров кода, количества коммитов, времени на ревью, ошибок связанных с неверным форматированием, ради прекращения войн стандартов, ради экономии на новых кнопках для клавиатуры в конце концов...

> Ну, вообще, это по моему опыту. Если меня заворачивают с скобкой -
> я таки где-то напортачил и скорее всего логика поломана и надо
> детально все перепроверять.

Точно так же и с пробелами.

> Вообще-то в сях - можно почти где угодно, так что при желании
> независимые логические блоки можно явно хайлайтить чуть активнее чем это обычно
> делают. Это не значит что это всегда нужно делать. Оформлять блок
> имеет смысл там где ... уместен логически выделенный блок, более-менее самодостаточный.
> Но если хочется - можно и по приколу почти везде делать.
> Но лучше не выпендриваться, код должен быть понятен другим, все что
> сверх того - нафиг надо.

Фактически в сях можно выкинуть пробелы в начале строк и жить только со скобками. Но вы же так делать не будете? Вы же все равно используете пробелы. Так зачем вам две одинаковые вещи? Вы итак отделяете блок двумя разделителями.

> Вы вообще на сях программировали?

Да.


> Я стараюсь не писать большие скрипты, предпочитая *никсвэйный подход. То есть небольшие
> эффективные качественные программы, при нужде объединяемые небольшими скриптами по месту.
> Модуляризация. Конечно это не всегда катит. Но мудрость в идеях древних
> есть. В отличие от вебмакак и питоняш, от которых если мне
> что и надо - чтобы они перестали замусоривать поиск своими поделиями.

Тогда тем более вам должен нравиться этот подход потому что в однострочниках вам не нужны блоки и никакие пробелы и скобочки тоже. А там где нужны, там 4 пробела.

> Так если я левые кавычки/скобки влеплю - буду послан. Их надо именно
> парно вкатить/стереть, и вероятность нечаянно сделать в виде когда оно будет
> сожрано как что-то валидное довольно низкая. В этом весь пойнт и
> состоит.

Так и шансы что вы именно 4 пробела случайно влепите крайне низкая.

> Обычно прогерские редакторы втыкают сразу эн пробелов, для разгона эффективности прогера,
> так что ну так себе аргумент. Не буду же я 4
> раза на уровень форматирования пробел сам жать, право? Я что, обезьяна?

Тогда определитесь каким редактором вы пользуетесь и опишите как он работает с кавычками и автодополнением и я покажу что в худшем случае он может работать точно также при использовании пробелов не теряя в эффективности и "безопасности".

> 1) Ну ващет за мена это компилер посчитает.

Это не вы 5 минут назад не хотели "мозг в стойло ставить"? Вы уж определитесь как-нибудь. С пробелами я и без компилятора сразу все увижу (и вы тоже, если захотите).

>[оверквотинг удален]
>

 
> {
>     abcd();
>     cdef();
>     {
>         efgh();
>         jklm();
>     }
> }
>

То же самое:

 
    abcd();
    cdef();
        efgh();
        jklm();

Читается лучше, строк меньше, символов меньше, набирать быстрее, сразу видно где какой блок.

> 3) Если мне чей-то синтаксис не нравится, я могу ему reflow в
> автоматическом режиме сделать при желании. И от дурно поставленых скобок голова
> будет болеть у компилера или парсера.

То же самое и с пробелами.

> Они удачно хайлайтят структуру блока и логические сущности, жестко указывая где задумано
> начало и конец этого блока. И парой случайных ошибок редактиврования сломать
> это в виде когда автоматика сие проглотит - довольно трудно.

Пробелы в начале строк вы так не используете. Вы ими никогда не хайлайтите. Вы хайлайтите переносом строк и зачем-то(для компилятора) добавляете скобки. Вы можете использовать пробели для выравнивания посреди строки, но и в моем способе вы точно также можете использовать пробелы посреди строки.

> Потому что явный маркер начала-конца блока отдельным символом - не встречающимся в
> других случаях - как-то эффективнее и надежнее в качестве надежного разграничения
> логических блоков.

Не встречающимся в других случаях? Три раза ха-ха. Вы все равно вставляете пробелы в начале строки, парсить 5 различных символов менее эффективно чем 4 символа. А если еще и добавить парность скобок то еще тяжелее.

> Только вот требования попарности нет, а пробелы встречаются при нормальном курсе событий,
> поэтому сломать это нечаянно - куда проще.

Пробел да, 4 пробела в начале строки - нет.

> Вообще, получить warning при подозрительном форматировании кода - почему бы и нет?
> На самом деле нормальный фичреквест.

Ну вот, я же говорил.

> Для меня выделение логических блоков отдельными символами как-то лучше схватывается. Алсо
> хайлайт парных скобок - штука в редакторах весьма типовая, мне так
> нравится.

Пфф..есть даже плагин на разноцветную подсветку разных блоков. Работает с пробелами.

> А вон ту задачу я вообще могу более 9000 способов решить. Это,
> типа, плохо?

Попытка увести разговор в сторону не засчитана.

> Я могу с этим жить. И если им так больше нравится -
> ну, я не парюсь особо, прогерские редакторы все равно культурно это
> все сделают.

Это не вы недавно писали про "эффективность" и "мозг в стойле"?

> Это чисто эстетическая проблема, сама по себе к факапам не ведет.

Располагает к разгильдяйству.

> Но отъезд логики на ошибке редактирования оно не поймает, от оригинала намерений
> ничего не осталось, и в целом удачи понять как оно было
> задумано. Сломать так curly bracket все же сложно и маловероятно.

Уже неоднократно писал об этом.

> Ващет гнать такого ревьюера надо. Гит на такие вещи например дико кислотные
> цвета рисует в консоли в git log -p и прочих git
> diff. Я не знаю как это можно не увидеть, от этого
> глаза сразу вытекают.

Что-то подсветит, а что-то нет. И ревьювера и тех кто решил скобки использовать.

> Более того - если у ревьюера не вызвал вопрос пустой блок/строки -
> это как минимум странно. А, да, я еще так то код
> немного ревьюю другим. Это для тебя ревьюеры божества, ставящие таких как
> ты в стойло. А для меня одни из равных.

Так блок не пустой, там в начале что-нибудь безобидное. Или пустой, но как вы любите отделяющий логический блок.

> Тем не менее пример довольно странный - бэкдор очень паливный, ибо пустые
> строки в логическом блоке очень бросаются в глаза. Их там быть
> не должно.

А с пробелами и вовсе невозможен.

> У питонистов вообще статический анализ в зачаточном состоянии. И обработка ошибок. Поэтому
> вообще все пихонскрипты рассыпались при малейшем тыкании палочкой. А зачастую и
> сами по себе как апгрейдер убунты, тот позорный случай когда руками
> проще и надежнее чем таким скриптом.

Причем тут питонисты? Причем тут убунта? Можете еще приплести школьников за то что на питоне учатся и рассказать какие школьники криворукие, поэтому де пробелы обречены.

> Чего бы? А в прогерском редакторе скорее 1 кнопой, не буду же
> я 4 пробела мануально, право?

Так в прогерском и скобки одной кнопкой. Не будете же вы мануально, право?

> Оно либо не повлияет ни на что кроме эстетики либо даст компил
> егор. Однако вот именно логику кода сломать оно не сможет и
> баста. И мы всегда будем видеть что на самом деле задумано.
> Ну как, начинка вон того блока не переедет в этот блок
> автоматически сама по себе, хоть там что. Правильно перекинуть блок кода
> с одного сегмента в другой, ничего не сломав, нечаянно - ну,
> это из области фантастики.

Также и с пробелами.

> ИМХО дублирование декларации намерений делает это устойчивее к ошибкам редактирования
> как раз. И чаще позволяет восстановить задумку испорченного кода как раз.
> Ну как, блочные операции случайно сделать в правильном виде - черт
> знает, у меня так не получалось. Чтобы код попал в другой
> блок с другим уровнем вложенности другого блока надо очень кастомное действо,
> деликатно выбрав правильные границы. Иначе компил егор.

И у меня не получалось. Но вы отчаянно этого боитесь.

> Вообще идея что я могу менять принадлежность кода тому или иному блоку/уровню
> вложенности пробелом - не кажется мне удачной, слишком просто порушить незапланировано,
> а бонусом намерения автора полностью утрачены и разве что в git
> или бэкап идти смотреть что там было, если, конечно, это все
> есть.

В Африке акулы,
В Африке гориллы,
В Африке большие
Злые крокодилы
Будут вас кусать,
Бить и обижать,-
Не ходите, дети,
В Африку гулять.

Ответить | Правка | Наверх | Cообщить модератору

318. "Дрю ДеВолт представил язык системного программирования Hare"  +/
Сообщение от Аноним (-), 29-Апр-22, 08:30 
> Похоже ты сектант. То ты топишь за акууратность и еррор, то "случайну
> уберу пробел, компиль без ошибок".

Я за сбалансированный подход, когда машина по возможности помогает кодеру, но допускается что это - человек разумный и не держит его за кретина которого п-лями без права оверрайда в стойло надо, ага. Пихоносинтаксис ставит в стойло даунов не способных к обучению. Мне использовать такие инструменты дико западло. Как и иметь дело с такими кодерами.

> Походу тебе ни то ни другое не надо, лишь бы "пробелов не было" и находу пытаешься
> придумать вымышленные проблемы, которых (еще раз напомню) нет.

Я лишь констатирую факт что синтаксис curly bracket видится мне сбалансированым. Не считается что кодер даун и есть гибкость с одной стороны, но явно кривые ситуации все же ловятся, а информации достаточно хоть для полного reflow. Мне так больше нравится.

> Кидай ошибку при форматировании и нет никаких проблем с пробелами.

Я тебе не необучаемое нечто чтобы меня п-лями без права оверрайда к форматированию приучать. Пусть к тебе такие подходы применяют. Как и запрет опасных операций типа указателей, ага. А себе я все же позволю немного гибкости, свободы и предпочтений не спущенных на бошку сверху божествами. Системщики сами себе божествами умеют быть - делая себе все окружение так как им хочется. Да, например макросней можно камня на камне не оставить от оригинального синтаксиса, например. Правда, так лучше не делать, т.к. другим будет тяжко одуплить.

> Я уже в очередной раз тебе об этом пишу, но ты упорно не читаешь.

С другой стороны системщики могут и повыпендриваться. Ну там посмотри c.otto.c какой - программа которая симметрична относительно ... оси симметрии :). На сях пожалуйста. А на пихоне - хренли я мяснику про картины рембрандта задвигаю?

> Если говорить про одинарный пробел, то также как и с кавычками.

Вообще речь была про скобки. Но кавычки тоже парами должны быть и это тоже хорошо. А пробелы, вот, не парные - и форматирование единственный хинт о намерении. Разметить скобками как ключевыми точками а форматирование лишь опциональная вспомогаловка мне больше нравится.

> Если говорить про любой символ, то вы так и [10] в [1]
> можете превратить и Get в Set, так что не вижу смысла
> расусоливать на эту тему.

Могу. Это даже иногда случается. Поэтому прошареный народ делает интересные вещи, про которые питоняши не в курсе. Типа static assert'ов всяких и параноидальных проверок. Если вон та функция by design жрала от 3 до 8 а ей 1 дали - компил как раз и сломается. В этом направлении особенно интересно zig'овские вычисления в компилтайм смотрятся, так много чего можно сделать, прогнав произвольную логику во время сборки.

> Вот именно. И тем более компьютер мешать не должен. Блоки кавычками мешают.

В сях нет блоков кавычками. Скобки помогают мне аннотировать намерения тогда как форматирование лишь вспомогаловка с определенной гибкостью в использовании. Иногда позволяет сделать намерения более выразительными. Например, скобки можно (парно) в принципе в любом месте втыкать. Явно хинтя что вот тут - законченный логический блок, например, годный для копипасты куда-то как самодостаточное нечто. А остальное форматирование при этом можно и не рушить, так что оно и хинтит реюзабельный сегмент и логику отражает одновременно.

> Наоборот. Нет лишних символов, чище код, проще читать, больше сфокусирован на действии,

А мне нестандартные символы позволяют визуально выхватывать логический блок. И более того - эдиторы умеют в продвинутую навигацию по блокам на основе этого самого, и прочий фолдинг и так далее. Так что можно взять да и скрыть логически-завершенный блок "под кат" раз он работает и более не интересен, сфокусировавшись на чем-то ином. С пробелами это все кривее будет.

> а не на форматировании или стиле.

Програмерские эдиторы сами на этом фокусируются и это проблема только для юзера нотпада. Но у него других проблем есть, например, там нет подсветки синтаксиса что сильно портит эффективность.

> В надежности не теряем,

Вообще-то теряем. Скобки + форматирование дают некоторую избыточность, что в случае факапа помогает восстановить изначально задуманную логику даже если вышел фэйл.

> код становится еще компактнее чем с кавычками.

И выглядит стеной кода без особой разбивки на блоки...

> раньше ты носил в рюкзаке бесполезный камень, а теперь его выбросил.

Ващет он был не бесполезный - когда что-то шло не так, его можно было вынуть и дать им по морде вон тому багу. А у тебя так низя.

> Так что либо пробелы в твоей аналогии это указатели (тк они
> максимально эффективные), либо лучше чем указатели.

В каком-то роде да. И с теми же проблемами - при неаккуратном использовании имеем проблемы. Но, знаешь, у системщиков аллергия на жесткую постановку в стойло. Даже у хипстерских нубов хрустиков unsafe есть ;)

> Начинается. Сначала за безопасность. Теперь вот "ради декоративно-эстетических целей" не готов.

Как бы для меня надежность имеет приоритет над эстетикой ради эстетики. А несколько избыточный маркап позволяет проще заметить и починить факап. К тому же эта избыточность ну вот мне самому жить не мешает - ее редакторы сами разруливают так то. Ну, если это не нотпад.

> Тогда ради однообразия, сокращения размеров кода,

Ставиться в стойло прерогатива взаимозаменимых вебманки.

> количества коммитов,

Это как?! Кто-то коммитит скобочки а не какие-то осмысленные фичи? :)

> времени на ревью,

Ващет при ревью я хочу понимать соответствие того что есть тому что задумано. Curly bracket дает лишний уровень обороны. Если там форматирование будет не соответствовать расстановке блоков, я спрошу у кодера что он имел в виду на самом деле.

> ошибок связанных с неверным форматированием, ради прекращения войн стандартов, ради экономии

Знаете, есть офигенный способ сэкономить ваше время - вообще программы не писать. Я буду очень рад если вы именно так и сделаете.

> на новых кнопках для клавиатуры в конце концов...

Э не, я ж не в нотпаде печатаю, более потребные редакторы, таки, удобно делают. И форматят сами, и блок могут парно оформить сразу, подогнав "болваночку". И подсвечивают парные скобки, все такое. С пробелами это вообще не очень понятно как делать. Если весь блок будет мигать, можно эпилептиком стать нахрен, а когда только парная скобка кислотненько подсвечена, это и видно хорошо и не бесит огромной площадью хайлайта. Баланс опять же...

> Точно так же и с пробелами.

А вот не так же - избыточности нет. И что я, буду сам все 4 пробела тапать? А как же экономия нажатий? Значит хоткеи на +1/-1 уровень, по эн пробелов за раз. Но избыточности при этом нет и факап с этим - полностью теряет инфо о намерениях. А в curly bracket - в силу избыточности это будет заметно (вплоть до коипил егора) и вернуть взад испорченое проще.

> Фактически в сях можно выкинуть пробелы в начале строк и жить только
> со скобками. Но вы же так делать не будете?

В общем случае не буду. Но отдельные эстеты иногда в декоративных целях зажигают - и это красиво. Это - программисты. А не вебабизяны.

> Вы же все равно используете пробелы. Так зачем вам две одинаковые вещи? Вы
> итак отделяете блок двумя разделителями.

Для некоторой избыточности гарантирующей что intent и реализация совпадают. А у вас есть только реализация, intent вообще не декларирован.

>> Вы вообще на сях программировали?
> Да.

Что-то не очень похоже. Или это было в нотпаде.

> Тогда тем более вам должен нравиться этот подход потому что в однострочниках
> вам не нужны блоки и никакие пробелы и скобочки тоже.

Однострочники имеют очень ограниченную применимость и свой набор проблем. Поэтому строк бывает и несколько. Ну и я могу жить с синтаксисом баша, но сказать что он мне нравится будет преувеличением.

> А там где нужны, там 4 пробела.

Мне со скобками больше нравится. И даже в баше таки можно делать какие-никакие функции и проч в таком духе, ага.

> Так и шансы что вы именно 4 пробела случайно влепите крайне низкая.

Один хоткей вкатать? Низкая?! Ну не буду же я по 4 раза пробел давить в крейсерском режиме, право, я ж не обезьяна в 4 раза частое дествие тормозить.

> Тогда определитесь каким редактором вы пользуетесь и опишите как он работает с
> кавычками и автодополнением и я покажу что в худшем случае он может работать точно
> также при использовании пробелов не теряя в эффективности и "безопасности".

Да на самом деле разными. Что-то совсем мелкое я могу и mcedit отрихтовать, в нем все маргинально зато навигация по иерархии супербыстрая. Для более тяжеловесных операций как минимум что-то типа geany или kate (в маздайке еще programmer's notepad бывает). И таки оно уже на границе между эдитором и ide и там подобные вещи настраиваются и оптимизируются.

> Это не вы 5 минут назад не хотели "мозг в стойло ставить"?

Так это... в сях вот именно в стойло не очень сильно ставят. Да и даже в хрусте unsafe есть. А показать логчиески-некорректную программу - при чем тут стойло? Предполагается что я сразу же и задумаю программу логически-некорректной? А зачем?

> все увижу (и вы тоже, если захотите).

Боюсь что мне не нравится такой стиль кода и я не хочу иметь с ним ничего общего. А ваши аргументы меня не цепляют потому что при объемистом редактировании продвинутыми редакторами это их проблема в основном.


     abcd();
     cdef();
         efgh();
         jklm();

Ага блин, но если было

abcd();
{
bcde();
cdef();
}
efgh();

...то мы знаем что они все на 1 уровне, но если хочется то вон то, в середине, можно выдирать как реюзабельный законченный блок! А с пробелами так вообще не отмаркируешь. Вон тем увлекаться конечно не стоит, но это полностью валидный синтаксис в си.

> Читается лучше, строк меньше, символов меньше, набирать быстрее, сразу видно где какой блок.

Можно подумать я скобки и форматирование руками делаю чтобы скорость набора просела. А читается оно имхо как стена текста.

> То же самое и с пробелами.

С пробелами это не имеет смысла. Скажем в сях можно разное число пробелов юзать. Например если я знаю что что-то заведомо сложное, то можно и 2 пробела на уровень сделать, для компактности. А если цель наоборот, зарубить сложный код во имя надежности - можно и 8 символов на уровень влепить, писать сильно вложенный код станет неудобно и паливно. То что один размер катил всем - ну, не факт, случаи разные бывают.

> Пробелы в начале строк вы так не используете. Вы ими никогда не
> хайлайтите. Вы хайлайтите переносом строк и зачем-то(для компилятора) добавляете скобки.

Я их и для себя добавляю как маркап логически завершенного блока, точки навигации и аннотацию намерений. Я вижу блок даже если еще не накодил его. Более того, его даже можно оставить пустым как напоманание самому себе что тут что-то на самом деле задумано и должно быть добавлено при случае. Пустой блок будет мозолить глаза но фатально ничего не сломает.

> Вы можете использовать пробели для выравнивания посреди строки, но и в
> моем способе вы точно также можете использовать пробелы посреди строки.

И тем не менее, со скобами имхо мощнее, гибче а избыточность уменьшает лажу.

> Не встречающимся в других случаях? Три раза ха-ха. Вы все равно вставляете
> пробелы в начале строки, парсить 5 различных символов менее эффективно чем
> 4 символа. А если еще и добавить парность скобок то еще тяжелее.

Пардон, но скобки в curly bracket применяются в конкретных случаях. И не фигурируют в остальном тексте программы наобум. И они сильно менее распостранены чем пробелы, что делает их удобными точками навигации, фолдинга блоков и проч.

> Пробел да, 4 пробела в начале строки - нет.

Вы не одупляете. На границах начала и конца блока соответственно, а в этом случае - явных маркеров начала и конца нет.

> Ну вот, я же говорил.

Знаете, статические анализаторы так то много на какие аномалии бухтят... если разрешить... и вот тут мое дело что из этого я считаю нужным видеть а что нафиг.

> Пфф..есть даже плагин на разноцветную подсветку разных блоков. Работает с пробелами.

Да ну нафиг эту эпилепсию. Одно дело мелкая кислотно светящаяся скобка и другое - полэкрана мигает.

> Попытка увести разговор в сторону не засчитана.

Типа не комплекс ходьбы строем...

> Это не вы недавно писали про "эффективность" и "мозг в стойле"?

Я. А в чем проблема, редакторы ж это делают удобно и быстро.

> Располагает к разгильдяйству.

Что-то не помогло это питону, глядя на то как скрипты на этом дохнут в первые 5 минут знакомства со мной, почти все. И эти люди будут про разгильдяйство?...

> Уже неоднократно писал об этом.

Я не знаю что вы там писали, но curly bracket хорошо ловит именно про@бы при редактировании. Мне это нравится. А вот реализовывать задумку, и даже например акцентировать внимание на вон том блоке - таки не мешает.

> Что-то подсветит, а что-то нет.

Ну как бы git обычный его подсвечивает как прожектор.

> И ревьювера и тех кто решил скобки использовать.

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

> Так блок не пустой, там в начале что-нибудь безобидное. Или пустой, но
> как вы любите отделяющий логический блок.

Так длинные линии проблема сама по себе - и это не должно пройти ни ревью, ни автоматические чекеры. Если это не так, толку от вашего ревью и чекеров - около ноля.

> А с пробелами и вовсе невозможен.

Да и хрен с ним - не выглядит огромной проблемой. Зато вот вам другой бэкдор: пробелов в уникоде так то более одного вида! В сях оно похрену. А вот вас можно попытаться накормить логикой которая выглядит иначе нежели по факту работает, используя пробелы которые типа не пробелы, в том плане что визуализуются как пустое место но не имеют эффекта на логику.

Кажется я только что придумал как иметь питоняш по технологии BadSource, лол :)

> что на питоне учатся и рассказать какие школьники криворукие, поэтому де пробелы обречены.

Да, блин, найти не глючный скрипт на питоне - ну, у меня не получилось ни разу. Вот честно, все что я видел было дикой наколенью. Прикольно когда при этом что-то вещают про надежность.

> Так в прогерском и скобки одной кнопкой. Не будете же вы мануально, право?

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

> Также и с пробелами.

Да ща.

> И у меня не получалось. Но вы отчаянно этого боитесь.

Скорее, мне нравится явное маркирование блоков. Много усилий от меня оно не требует и позволяет ряд интересных вещей. Вплоть до разнесенных по времени декларации намерений и фактического кодинга. Когда пустой блок является placeholder для какого-то сегмента который я попозже накатаю. А если не накатаю - визуально это достаточно заметно и вызовет вопросы.

Ответить | Правка | Наверх | Cообщить модератору

330. "Дрю ДеВолт представил язык системного программирования Hare"  +/
Сообщение от keydon (ok), 29-Апр-22, 21:34 
Не буду повторяться, вижу вы даже не собираетесь вникать. Все ваши аргументы заключаются в одной фразе: лишь бы не как в питоне. Притом про питон речи не было(я не предлагаю следовать его синтаксису). Но видно что и питоном вы никогда и не пользовались и на ходу пытаетесь придумать проблемы которых нет. Когда я вам объясняю почему их нет, вы либо повторяетесь, либо меняете тему, либо меняете сторону на противоположную(но и там проблем с пробелами не находится), либо безуспешно пытаетесь расставить логические ловушки с извращенной логикой.
Ответить | Правка | Наверх | Cообщить модератору

334. "Дрю ДеВолт представил язык системного программирования Hare"  +/
Сообщение от Аноним (-), 30-Апр-22, 02:14 
Да и я устал. Посчитаем что мне тот синтаксис все же не нравится, настолько что я им пользоваться не буду по совокупности свойств.

А питон что, образец голимой наколенщины и одноразовго софта писаного сразу на выброс. Там аргументы про экономию сил ламерьем не умеющим редактор настраивать, любой ценой, поймут - там надо чтобы раб у весла как можно больше прожЕктов в единицу времени хреначил, а заказчик все равно ламер и ничерта не смыслит. Ваши аргументы все из этой области. И хрен с ним что багов больше, утеряны намерения кодера и прочие несущественные мелочи. А меня в системщине все же волнует качество кода, возможность других двуногих в него въехать, antibug и проч.

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру