JS
Size: a a a
JS
SD
>>> d | [('spam', 999)]
Traceback (most recent call last):
...
TypeError: can only merge dict (not "list") to dict
>>> d |= [('spam', 999)]
>>> d
{'eggs': 2, 'cheese': 'cheddar', 'aardvark': 'Ethel', 'spam': 999}SD
JS
АХ
unionWith (<>) а не использовать для этого FirstJS
unionWith (<>) а не использовать для этого FirstАХ
union @@FirstJS
union @@FirstJS
(map1 <> map2) @@(Monoid First)?АХ
instance Monoid a => Monoid (Map k a)JS
instance Monoid a => Monoid (Map k a)АХ
JS
union @@FirstАХ
union @@First там просто вставляются coerce :: Map k v -> Map k (First v) и обратноJS
union @@First там просто вставляются coerce :: Map k v -> Map k (First v) и обратноunionWith somethingFirst?АХ
Monoid v лучше тем, что его тогда можно подменять привыводни инстансов DerivingVia, а так там First прибит гвоздёмMK
DI

DI
MK
