Vorlesung: Praxis der Funktionalen Programmierung
| Index
Falsche Funktoren
Übungsaufgabe war, Instanzen hinzuschreiben,
die zwar typkorrekt sind, aber die Funktor-Axiome nicht erfüllen.
Eine Schwierigkeit besteht darin, daß wir mit den Elementen des Typs
(der Liste) eigentlich gar nichts machen können - die Funktion fmap
muß ja polymorph sein.
Hier gelten beide Axiome nicht:
instance Functor [] where
fmap f xs = [ f x | x <- reverse xs ]
Verschärfte Aufgaben:
- finde eine typkorrekte, aber trotzdem falsche Functor Maybe-Instanz.
- finde eine typkorrekte Functor []-Instanz,
die genau eines der beiden Axiome erfüllt
http://www.informatik.uni-leipzig.de/~joe/
mailto:joe@informatik.uni-leipzig.de