Eu tenho lido Haskell do mundo real e estou chegando ao fim, mas uma questão de estilo me incomoda com os operadores (.)
e ($)
.
Quando você escreve uma função que é uma composição de outras funções, você a escreve como:
f = g . h
Mas quando você aplica algo ao final dessas funções, escrevo-o assim:
k = a $ b $ c $ value
Mas o livro escreveria assim:
k = a . b . c $ value
Agora, para mim, eles parecem funcionalmente equivalentes, fazem exatamente a mesma coisa aos meus olhos. No entanto, quanto mais eu olho, mais vejo pessoas escrevendo suas funções da maneira que o livro faz: componha (.)
primeiro e depois apenas no final use ($)
para acrescentar um valor para avaliar o lote (ninguém o faz com muitas composições em dólares) .
Existe uma razão para usar a maneira livros muito melhor do que usar todos os ($)
símbolos? Ou existe alguma prática recomendada aqui que eu não estou conseguindo? Ou é supérfluo e eu não deveria me preocupar com isso?
a . b $ c value
que não gosto tanto quanto no terceiro exemplo, mas salva alguns caracteres.
k = a $ b $ c value