Başlık, her şeyi açıklıyor. foldl1
ve foldl'
her ikisi de Foldable
için genelleştirilir, foldl1'
ise değil. Bu yeni bir gözetim mi? Yoksa tasarım seçimi mi?Neden foldl1 'Katlanabilir'e genelleştirilemiyor?
foldl1'
tip I foldl1
aynı tip olması bekleniyor,
foldl1' :: (a -> a -> a) -> [a] -> a
geçerli:
foldl1 :: Foldable t => (a -> a -> a) -> t a -> a
Ben de foldl1'
Data.List
ancak Data.Foldable
tarafından ihraç görüyoruz. Belki bu ilgili?
'foldl1' veya' foldl1 'işlevi' Katlanılabilir 'seçeneğine ait değildir. Katlanamaz katlanabilir kapların sınıfı olan Katlanabilir1'e aitler. Birisi bir hata yaptı ve 'Katlanabilir' içine 'foldl1' koydu. Kimsenin bu hatayı birleştirmek için kalbi olduğunu sanmıyorum. – dfeuer
@dfeuer: "Katlanabilir" in tanıtımı _really_ uzun bir tartışma ve anketle önceleri değil miydi? Bu gözden kaçmış mıydı yoksa bir uzlaşma mı? – ljedrz
@ljedrz Bence, "Katlanabilir" in orijinal tasarımı ile (eğer varsa) Prelude'deki 'Katlanabilir'i kullanma hakkındaki tartışmayı karıştırıyorsunuz. – Cactus