Помогите, пожалуйста, с получившимся говнокодом:
let mergeRoots (groupsRoot:Records.UniversityRoot) (teachersRoot:Records.UniversityRoot) = {
groupsRoot with University = {
groupsRoot.University with Faculties =
groupsRoot.University.Faculties
|> Array.map (fun f ->
let anotherF : Records.Faculty = teachersRoot.University.Faculties |> Array.find (fun f' -> f'.Id = f.Id)
{ f with Teachers = anotherF.Teachers; Departments = anotherF.Departments }
)
}
}
Два варианта. Уйти от ФП, уйти в ФП.
Делать мутабл поля и через дот нотацию их промутировать.
Поюзать линзы
Ayrat
Andrew
Vladislav
Vasily
Romɑn
Nikolay
Hog
Анна
Igor
Klei
Bonart
Крылатый
Dmitry