You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In Value.hs
It is really cool to have the correspondence between nix and haskell.
These are how the conversion between nix and haskell currently are.
Value constructor, mkNV*.
Value destructor unidirectional PatternSynonyms, NV*.
But it seems superfluous since these two can actually be merged together by switching the PatternSynonyms from unidirectional to bidirectional.
We would have unified constructor and destructor for values.
pros, cleaner, coherent, shorter, easier to go through the code.
cons, We now need both constraints in PatternSynonyms from each of the two parts, (Comonad f, Applicative f) to make it work.
I have a working draft here #1046, hope you guys could review it and give advices.
The text was updated successfully, but these errors were encountered:
soulomoon
changed the title
change bidirectional PatternSynonyms in value from Unidirectional to bidirectional
change PatternSynonyms in value module from Unidirectional to bidirectional
Jan 22, 2022
soulomoon
changed the title
change PatternSynonyms in value module from Unidirectional to bidirectional
Refactor: change PatternSynonyms in value module from Unidirectional to bidirectional
Jan 22, 2022
In
Value.hs
It is really cool to have the correspondence between nix and haskell.
These are how the conversion between nix and haskell currently are.
mkNV*
.NV*
.But it seems superfluous since these two can actually be merged together by switching the PatternSynonyms from unidirectional to bidirectional.
We would have unified constructor and destructor for values.
(Comonad f, Applicative f)
to make it work.I have a working draft here #1046, hope you guys could review it and give advices.
The text was updated successfully, but these errors were encountered: