Vladislav
Ну так опрос про indentation.
nvkv
ну дак а алайнмент без индентейшн как сделать?
Vladislav
Ты сначала индентишь табами, а потом выравниваешь пробелами.
nvkv
ага, у друга таб короче и всё покрывается адом
Vladislav
Как раз нет.
nvkv
как нет?
nvkv
на первую строчку в моём примере посмотри
Vladislav
У друга таб короче — у него код выглядит компактнее.
nvkv
она вообще без отступов
nvkv
а остальные с отступами
nvkv
в итоге получишь ад
Vladislav
Там всё явно попадает под alignment
nvkv
[methodCallWithParam: x and: y and: z]
Vladislav
Это не индентация
nvkv
это то, что будет, если я табами начну objc индентить
Vladislav
Не индентить, а выравнивать
nvkv
мне нужно выравнивание по :
Vladislav
^ выравнивание
Vladislav
alignment
Vladislav
Сам ведь понимаешь, о чем речь.
nvkv
то есть ты предлагаешь устраивать смесь из табов и пробелов?
Vladislav
Предлагаю не я, предложили это давно, и некоторые даже так делают
nvkv
не, ну многие много что делают, но это же очевидный геморрой
Vladislav
Да нормально, я так делал, но перестал по социальным причинам (не у всех настроено отображение табов в редакторе, люди начинают путаться)
Vladislav
Проще просто объявить "используем N пробелов", но объективно проблем с табами для индентации нет
nvkv
тут кроме социальных разве ещё какие-то причины есть?
nvkv
ну вот ты только что сказал, что есть :)
nvkv
технических проблем нет
nvkv
и то есть
nvkv
редактор настраивать надо
Vladislav
Ну это для удобства. Техническое преимущество табов для индентации в том, что если ты на большом экране редактируешь, то тебе удобнее выставить tab=8, а если на маленьком, то tab=2
Vladislav
И код сам отресайзится
nvkv
вообще говоря намного проще ввести в проекте лимит на длину строки
nvkv
80 это хардкор, у меня сейчас везде 120
nvkv
и смотрится нормально на любых уже теперь экранах
nvkv
кроме телефона, разве что
Vladislav
Хаскель имеет неприятную тенденцию расти вширь, особенно типы
Vladislav
Ну а вообще 80 символов это нормальный лимит
Vladislav
Можно уложиться, если постараться. Зато если у тебя на экране помещается 160 символов, то сможешь параллельно два буфера смотреть
Anatolii
Да привычку сейчас такие экраны что уже и 2 по 120 влезет
nvkv
и смотрится нормально только с огромными шрифтами
Denis
Не знаю, что там в ObjC, а я на работе код для 1С пишу с табами. А кто-то пишет с пробелами рядом. И мне пофиг, Ctrl+Alt+F все выровняет, как надо, и все невидимые табы и пробелы заменит, если понадобится.
Denis
И да, я считаю do-нотацию в хаскеле убогой именно из-за ее зависимости от выравнивания.
Vladislav
Она не зависит от выравнивания
Vladislav
blahBlahLongName = do x <- mx y <- f x k x y
Vladislav
Так зависит только от индентации
Vladislav
blahBlahLongName = do { x <- mx; y <- f x; k x y }
Vladislav
Так ни от чего вообще
Denis
Да плевать, как это называется,
Anatolii
По-моему хаскель и убогое в одном предложении нельзя употреблять
Vladislav
Ну никто не запрещает проставлять { и } и ; проставлять явно, и потом выравнивать как вздумается
Vladislav
Хм, надо подумать. 1998?
Vladislav
Не знаю, что там до стандартизации было в этом плане.
Vladislav
Может и раньше
Anatolii
haskell-learning-group/haskell-learning-group https://github.com/haskell-learning-group/haskell-learning-group
Anatolii
Все видели?
Anatolii
А то я только сейчас увидел
Denis
Хм, надо подумать. 1998?
Что-то я ее в учебниках не встречал никогда
Vladislav
Учебники такие, значит
Vladislav
В Хаскеле весь синтаксис построен на { ; }, но в зависимости от выравнивания они автоматически могут проставляться
Vladislav
Т.е. это не только для do-нотации
Anonymous
Это у тебя выравнивание, нуб
Vladislav
Ну вот ты пишешь, там, let какой-нибудь
Vladislav
Хочешь два определения, как обычно поступаешь?
Vladislav
Второе определение на новой строке?
Vladislav
Так новая строка просто ; вставляет
Vladislav
let x = 1 y = 2 in x + y
Vladislav
то же самое, что
Vladislav
let x = 1; y = 2 in x + y
Vladislav
Или пишешь там class Blahblah a where, ну и так далее
Anatolii
Сам сегодня нашел
Anatolii
Надо письмецо написать
nvkv
Это у тебя выравнивание, нуб
Я тебя тоже люблю, няшка
Нурлан
Это в vim'е? что за цветовая схема?
Alexander
https://twitter.com/qnikst/status/770181477157986305 в свете последней драмы