Как мне обеспечить «единый источник правды» в чистом FP? - PullRequest
0 голосов
/ 30 августа 2018

В ОО-системе я мог иметь объект «Данные» и делиться ссылкой с несколькими другими объектами. Если я обновлю объект данных, любой объект со ссылкой увидит обновленные данные.

В чистой системе FP у нас есть проблема, когда для любой структуры данных мы можем спросить: «Должна ли она хранить такие-то или такие данные, или мы должны ожидать, что данные будут переданы?»

например. Я должен решить, если это нормально иметь что-то вроде:
students : Dict StudentId Student toString : Dict StudentId Student -> StudentId -> Maybe String или лучше иметь
studentIds : Set StudentId toString : (StudentId -> Maybe Student) -> StudentId -> Maybe String

Первый рискует дублировать отношения или данные, или иметь разные истины.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...