Size: a a a

2021 January 07

JS

Jerzy Syrowiecki in Haskell
GNU/Vsevolod
Да, к примеру, есть
contents <- getArgs >>= readFile . head <&> lines
но
contents <- getArgs >>= head >>> readFile <&> lines
выглядит читабельнее, т.к. функи в соответствующем порядке слева направо. Но из-за прецедентности >>> придется в скобки брать
лучше вот так
args <- getArgs
contents <- readFile $ head args
let fileLines = lines contents
источник

G

GNU/Vsevolod in Haskell
Jerzy Syrowiecki
лучше вот так
args <- getArgs
contents <- readFile $ head args
let fileLines = lines contents
oneliner*
источник

JS

Jerzy Syrowiecki in Haskell
GNU/Vsevolod
oneliner*
oneliners suck
источник

JS

Jerzy Syrowiecki in Haskell
вы же начали с читаемости
источник

JS

Jerzy Syrowiecki in Haskell
ванлайнеры нужны для кодгольфа, а для читаемости лучше несколько простых вещей, чем одна сложная
источник

G

GNU/Vsevolod in Haskell
Я правильно понял, что екстеншн BlockArguments нужен, чтобы вместо
foo $ do
 ...
делать
foo do
 ...
источник

G

GNU/Vsevolod in Haskell
Jerzy Syrowiecki
ванлайнеры нужны для кодгольфа, а для читаемости лучше несколько простых вещей, чем одна сложная
справедливо
источник

JS

Jerzy Syrowiecki in Haskell
GNU/Vsevolod
Я правильно понял, что екстеншн BlockArguments нужен, чтобы вместо
foo $ do
 ...
делать
foo do
 ...
да, но не только
источник

JS

Jerzy Syrowiecki in Haskell
ещё вместо
for xs $ \x -> _
теперь можно писать
for xs \x -> _
источник

JS

Jerzy Syrowiecki in Haskell
или вместо

if_ cond
 (do foo
     bar)
 (do baz
     qux)

можно

if_ cond
 do  foo
     bar
 do  baz
     qux
источник

к

кана in Haskell
Jerzy Syrowiecki
(`f` a) == f `flip` a == f ?? a
каеф
источник

к

кана in Haskell
Jerzy Syrowiecki
вы же начали с читаемости
лишняя переменная не способствует читаемости
источник

JS

Jerzy Syrowiecki in Haskell
кана
лишняя переменная не способствует читаемости
ну, тут неоднозначно
источник

к

кана in Haskell
тут опять же нужен баланс, и в данном случае в одну строчку имхо лучше
источник

к

кана in Haskell
так как getArgs однозначно возвращает аргументы, ничего сложного нет, чтобы разделять выражение
источник

G

GNU/Vsevolod in Haskell
Можно как-то увидеть более детальную инфу при ошибке Non-exhaustive patterns, не просто стектрейс, а сам незаматчившийся паттерн?
источник

JS

Jerzy Syrowiecki in Haskell
GNU/Vsevolod
Можно как-то увидеть более детальную инфу при ошибке Non-exhaustive patterns, не просто стектрейс, а сам незаматчившийся паттерн?
-Wall
источник

G

GNU/Vsevolod in Haskell
Да
источник

JS

Jerzy Syrowiecki in Haskell
GNU/Vsevolod
Можно как-то увидеть более детальную инфу при ошибке Non-exhaustive patterns, не просто стектрейс, а сам незаматчившийся паттерн?
а у вас стэктрэйс есть на этой ошибке?
источник

G

GNU/Vsevolod in Haskell
Jerzy Syrowiecki
а у вас стэктрэйс есть на этой ошибке?
Имел ввиду строки в сорцах, где паттерн матчинг
источник