Czytałem Real World Haskell i zbliżam się do końca, ale kwestia stylu mnie dręczy z operatorami (.)
i ($)
.
Kiedy piszesz funkcję będącą kompozycją innych funkcji, piszesz ją tak:
f = g . h
Ale kiedy zastosujesz coś na końcu tych funkcji, piszę to w ten sposób:
k = a $ b $ c $ value
Ale książka napisałaby to tak:
k = a . b . c $ value
Dla mnie wyglądają na równoważne funkcjonalnie, robią dokładnie to samo w moich oczach. Jednak im więcej patrzę, tym częściej widzę ludzi piszących swoje funkcje w sposób, w jaki robi to książka: (.)
najpierw komponuj, a dopiero na końcu użyj, ($)
aby dodać wartość, aby ocenić partię (nikt nie robi tego z wieloma kompozycjami dolarowymi) .
Czy jest jakiś powód, by używać książek w sposób znacznie lepszy niż używanie wszystkich ($)
symboli? Czy jest tu jakaś najlepsza praktyka, której nie rozumiem? A może jest to zbędne i nie powinienem się tym w ogóle martwić?
k = a $ b $ c value