Rolle der funktionalen Abhängigkeit in der Typenklasse `Unfoldable` der Haskell Collection API

Im versucht, das Design von Haskell's @ zu verstehData.Collection Bibliothek, die aus der Scala-Welt stammt.

Es verwendetFunktionale Abhängigkeiten (die ein @ habScala analog) aber die Art, wie sie verwendet werden, ergibt für mich keinen Sinn. In demUnfoldable class, unten wiedergegeben, der Elementtypi wird als @ angezeibestimmt durc die Sammlungsartc.

class Unfoldable c i | c -> i

Klasse der Sammlung mit nicht beobachtbaren Elementen. Es ist das Dual desFoldable Klasse.

Bitte erläutern Sie die Rolle, die die Abhängigkeitc -> i spielt hier auch die gestalterische Absicht eine Rolle, idealerweise mit einem Anwendungsbeispiel?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage