Trochę pytania z haskellem neofita, ale natknąłem się na ten przykład w Haskella tutorial examples. Dla „znaleźć ostatni element listy” istnieją pewne oczywiste wersje, jakFunkcja funkcji Haskella
last' [x] = x
last' (_:xs) = last' xs
Ale nie mogę sensu z alternatywnej wersji przedstawiane:
myLast' = foldr1 (const id)
Tak, próbując zrobić poczucie co stosowanie funkcji id robi, próbowałem w ghci:
const id 1 2 -> gives 2
to wiąże się to tak:
(const id) 1 2 -> gives 2
A nie tak:
const (id 1) 2 -> gives 1
Ale nie mam sensu tego. (const id)
powinno przełożyć się coś podobnego
`(\x y->x) (\x->x)`
Gdyby nie to powrót funkcję, która po prostu zwraca identyfikator swojego pierwszego elementu? Lub w jaki sposób tworzenie kolejności funkcji (const id) zachowuje się inaczej niż const?
Witamy w klubie 10k! –
Chciałbym podziękować akademii, mojemu producentowi, reżyserowi ... –
loooooooool! Like: P – Nomics