Als «zipper» getaggte Fragen

7
Sauberere Möglichkeit, verschachtelte Strukturen zu aktualisieren
Angenommen, ich habe zwei folgende case class: case class Address(street: String, city: String, state: String, zipCode: Int) case class Person(firstName: String, lastName: String, address: Address) und die folgende Instanz der PersonKlasse: val raj = Person("Raj", "Shekhar", Address("M Gandhi Marg", "Mumbai", "Maharashtra", 411342)) Nun , wenn ich zu aktualisierenden zipCodevon rajdann …
124 scala  case-class  zipper 

1
Verstehen, warum Zipper eine Comonad ist
Dies ist eine Fortsetzung der Antwort auf meine vorherige Frage. Angenommen , ich brauche jedes Element zur Karte a:Avon List[A]zu b:Bmit Funktion def f(a:A, leftNeighbors:List[A]): Bund erzeugen List[B]. Natürlich kann ich nicht einfach anrufen mapauf der Liste , aber ich kann die Liste verwenden Reißverschluss . Der Reißverschluss ist ein …

3
Reißverschluss-Comonaden im Allgemeinen
Bei jedem Containertyp können wir den (elementfokussierten) Reißverschluss bilden und wissen, dass diese Struktur eine Comonad ist. Dies wurde kürzlich in einer anderen Frage zum Stapelüberlauf für den folgenden Typ ausführlich untersucht : data Bin a = Branch (Bin a) a (Bin a) | Leaf a deriving Functor mit folgendem …
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.