Ich habe gelesen, dass der unbequeme Typ von take
aus historischen Gründen ist, und dass das Ändern könnte dazu führen, dass einige Code zu brechen.Warum kann der Take-Typ nicht geändert werden, um Integral zu verwenden?
Aber kann ich nicht überall take
durch genericTake
ersetzen, ohne etwas zu brechen? Was ist das Problem?
Ich vermute, dass es eine Situation geben könnte, in der das Ableiten von Typen auf 'take' basiert - mit' genericTake' wird etwas von "can not abzuleiten" auftreten. – leventov
Beachten Sie, dass zusätzlich zu (und vielleicht praktisch relevanterem) Code-Bruch in obskuren Fällen das Ersetzen von 'take' durch' genericTake' in vielen Fällen zu Leistungseinbußen führen würde (da Typ-Default nun zu 'Integer' führt) Wird verwendet, wenn ':: Int' nicht angegeben wird. – sepp2k