Bu soru bir Haskell acemi yöneticisinden.Bu Haskell kodunda "id" ne anlama geliyor?
başka türlü '`yanlış dönmek nasıl bir listede True
birçok kontrol etmek için aşağıdaki kod yazmak ve bu True
ait even
sayısına sahipse, o zaman True
dönün.
xor =
foldr xor' False
where
xor' True True = False
xor' False False = False
xor' _ _ = True
Ancak, bazı kod parçacıkları aşağıda buldum ve onu aynı şeyi yapabilir gibi görünüyor .. İşte kodudur:
xor :: [Bool] -> Bool
xor = odd . length . filter id
Ama ne kadar id
eserler hiçbir fikrim yok Yukarıdaki kodda, bana biraz yardım edebilir misiniz?
Bu kimlik işlevidir: https://www.haskell.org/hoogle/?hoogle=id –
'id' yalnızca kimlik işlevidir. 'filter id', 'filter (== True) 'ile aynıdır - sadece' False 'öğelerini kaldırır. – user2407038
Bu mükemmel soruya (yeni başlayanlar için) kimlerin düşeceğini merak ediyorum - çocuklar son derece olumlu Haskell alt grubunu tutmalıyız! – Carsten