Als ich den Quellcode scalaz.effect.IO
sah, bemerkte ich, dass er eine Methode apply
mit der folgenden Signatur hat:
Tower[A]
und IvoryTower
sind definiert als:
Es gibt eine Instanz von Tower
:
Was ist der Zweck dieser Klassen? Warum akzeptiert IO.apply
ein Argument vom Typ Tower[IvoryTower]
?