家をNHouseに変換する関数を作成する必要があります。
data House = House { hworking :: Working, hfinished :: Finished}
type Working = [Roof] , type Finished = [Roof]
data NHouse = NHouse {rot :: [NRoof]}
data NRoof = NRoof {h :: Roof, st :: Status }
data Status = Working | Finished
NRoofの各屋根を変換し、それを家のすべての屋根に適用する補助関数を作成することを考えました。
しかし、私はそれを理解することができません。私はこのようなことをしています:
nWorking :: Roof -> NRoof
nWorking x = NRoof {x, Working }