Verwende Linsen, um verschachtelte Records zu aktualisieren (spezifisch für Sprachen mit unveränderlichen Daten).
Felder von verschachtelten, unveränderlichen Records zu aktualisieren ist ziemlich lästig. Der Code für solche Fälle ist genauso umständlich wie die Struktur tief ist. Wenn du zum Beispiel eine Person hast, die eine Adresse enthält, die eine Straße hat, die eine Nummer hat, dann musst du zum Aktualisieren der Nummer eine neue Straße mit der neuen Nummer erzeugen, dann eine neue Adresse mit der neuen Straße und schließlich eine neue Person mit der neuen Adresse. Schon verwirrt?
Eine Lösung für dieses Problem ist die Verwendung von Linsen.
Implementiere mit Linsen mehrere Funktionen für den Zugriff auf Records. Die Testsuite erlaubt es dir außerdem, ganz auf Linsen zu verzichten, damit du mit verschiedenen Ansätzen experimentieren kannst.
Melde dich bei Exercism an, um Haskell mit 107 Übungen und echtem menschlichen Mentoring zu lernen und zu meistern, alles kostenlos.