Closed ta0kira closed 3 years ago
Actually, GeneralType
also removes duplicates in mergeAny
and mergeAll
, so this might not work. Maybe MergeTree
could contain an arbitrary container of some sort.
The deduplication done by GeneralType
prevents it from being a Monad
, Functor
, etc., which means that some MergeTree
substitutions can't be represented. An alternative is to create a new class
for objects "like" MergeTree
and make functions on the latter available to the former.
The only real difference at this point is that the
Show
instance ofGeneralInstance
(type alias) uses Zeolite syntax and that forMergeTree
uses Haskell syntax. One solution is to add a newclass
for formatting in Zeolite syntax.