Ich bin neu in Haskell, also versuche ich herauszufinden, wie man Baumdurchquerungen macht.Wie transformiert man einen Baum mit Scrap Your Boilerplate?
Hier ist das Unternehmen Beispiel (mit einer leichten Veränderung), die ich in mehreren Zeitungen gesehen haben
data Company = C [Dept] deriving (Eq, Show, Typeable, Data)
data Dept = D Name Manager [Unit] deriving (Eq, Show, Typeable, Data)
data ThinkTank= TK Name [Unit] deriving (Eq, Show, Typeable, Data)
data Unit = PU Employee | DU Dept deriving (Eq, Show, Typeable, Data)
data Employee = E Person Salary deriving (Eq, Show, Typeable, Data)
data Person = P Name Address deriving (Eq, Show, Typeable, Data)
data Salary = S Float deriving (Eq, Show, Typeable, Data)
type Manager = Employee
type Name = String
type Address = String
Was würde ich tun möchte, ist ein Mitarbeiter zu bewegen, von wo er zu einer bestimmten Abteilung ist. Diese Person könnte in einer Abteilung oder einem ThinkTank sein.
Es scheint einfach zu sein, Dinge in SYB zu tun, solange Sie einen Typ machen, aber ich bin mir nicht sicher, wie man mit mehreren Datentypen umgehen soll.