Size: a a a

2020 May 04

A

Anton 📦 ᯌ in rust_offtopic
Emmanuel Goldstein
Ваще Idris и Haskell дико бесят долбанутым сигнификант вайтспейс
источник

A

Anton 📦 ᯌ in rust_offtopic
Alex Zhukovsky
меня больше раздражает что

blablabla = do
   bar

не работает, потому что bar не может быть левее чем do
по моему это отлично потому что логичнее
источник

EG

Emmanuel Goldstein in rust_offtopic
Это неудобно писать.
источник

A

Anton 📦 ᯌ in rust_offtopic
Emmanuel Goldstein
Это неудобно писать.
это да
источник

EG

Emmanuel Goldstein in rust_offtopic
Vim кое-как справляется с расстановкой странных количеств пробелов, но всё равно неудобно
источник

EG

Emmanuel Goldstein in rust_offtopic
Было бы удобнее, если бы всё это выравнивание потом просто применялось автоформаттером
источник

AZ

Alex Zhukovsky in rust_offtopic
Anton 📦 ᯌ
по моему это отлично потому что логичнее
не логичнее
источник

p

polunin.ai in rust_offtopic
Alex Zhukovsky
затем что в языках где интенданция сильно влияет это решает
да нет. я в питоне только табами делал отступы. не понимаю зачем тебе отступ в один пробел.
источник

AZ

Alex Zhukovsky in rust_offtopic
polunin.ai
да нет. я в питоне только табами делал отступы. не понимаю зачем тебе отступ в один пробел.
у меня есть отступы в 5-6 пробелов при общих отступах в 4. Почему? Потому что если у тебя выше длинное имя и конструкция которая не разрешает левее него писать, то ты приехал
источник

EG

Emmanuel Goldstein in rust_offtopic
polunin.ai
да нет. я в питоне только табами делал отступы. не понимаю зачем тебе отступ в один пробел.
Потому что в питоне нормальный significant whitespace, а в Haskell-подобных — нет
источник

EG

Emmanuel Goldstein in rust_offtopic
Потому что если ты пишешь
func = let x = ...
          y = ...
источник

EG

Emmanuel Goldstein in rust_offtopic
То икс должен быть ровно над игреком
источник

AZ

Alex Zhukovsky in rust_offtopic
polunin.ai
да нет. я в питоне только табами делал отступы. не понимаю зачем тебе отступ в один пробел.
whileM' : (Monad m, Monad f, Alternative f) => (a -> Bool) -> m a -> m (f a)
whileM' p f = go
   where go = do
       x <- f
       if p x
           then do
                   xs <- go
                   pure (pure x <|> xs)
           else pure empty


Type checking .\.\test.idr
.\.\test.idr:15:9:
  |
15 |         x <- f
  |         ^
end of block
источник

EG

Emmanuel Goldstein in rust_offtopic
И там совершенно необязательно множитель в четыре пробела
источник

AZ

Alex Zhukovsky in rust_offtopic
Alex Zhukovsky
whileM' : (Monad m, Monad f, Alternative f) => (a -> Bool) -> m a -> m (f a)
whileM' p f = go
   where go = do
       x <- f
       if p x
           then do
                   xs <- go
                   pure (pure x <|> xs)
           else pure empty


Type checking .\.\test.idr
.\.\test.idr:15:9:
  |
15 |         x <- f
  |         ^
end of block
whileM' : (Monad m, Monad f, Alternative f) => (a -> Bool) -> m a -> m (f a)
whileM' p f = go
   where go = do
           x <- f
           if p x
               then do
                       xs <- go
                       pure (pure x <|> xs)
               else pure empty


Только так и никак иначе
источник

NI

Nickolay Ilyushin in rust_offtopic
источник

p

polunin.ai in rust_offtopic
Alex Zhukovsky
у меня есть отступы в 5-6 пробелов при общих отступах в 4. Почему? Потому что если у тебя выше длинное имя и конструкция которая не разрешает левее него писать, то ты приехал
это работает, хз о чем ты
источник

AZ

Alex Zhukovsky in rust_offtopic
polunin.ai
это работает, хз о чем ты
я тебе скинул код, попробуй его вставить
источник

p

polunin.ai in rust_offtopic
Emmanuel Goldstein
Потому что если ты пишешь
func = let x = ...
          y = ...
лови лайфхак: let с пробелом имеют 4 символа, как таб
источник

EG

Emmanuel Goldstein in rust_offtopic
polunin.ai
лови лайфхак: let с пробелом имеют 4 символа, как таб
Это если они не стоят после другого выражения
источник