This pull request refactors the module structure in order to get rid of some meta-named modules (Types, Optics, Monad), anti patterns that lead to crowded modules (Misc, Types), legacy unused code (e.g. Balance) or terminology (e.g. Constraints).
The following changes are introduced:
No more Tx and Constraints parent modules
Tx.Constraints.Types is split into Output (classes and instances describing transaction outputs) and Skeleton (transaction skeletons)
Tx.Constraints.Optics was short and dealt with skeletons so its content is now in Skeleton
Only a few functions from Misc were used by Wallet. They have been moved to that module and Misc has been removed.
Balance has been removed
Wallet and RawUPLC are now at the top level: they were not closely linked to the concept of MockChain
The export modules have been updated accordingly: import Cooked brings everything to scope. The tests use that.
Tweak module directory is now at the top level, outside of Attack
The MockChain module is now flat and the Monad module called BlockChain
This pull request refactors the module structure in order to get rid of some meta-named modules (
Types
,Optics
,Monad
), anti patterns that lead to crowded modules (Misc
,Types
), legacy unused code (e.g.Balance
) or terminology (e.g.Constraints
).The following changes are introduced:
Tx
andConstraints
parent modulesTx.Constraints.Types
is split intoOutput
(classes and instances describing transaction outputs) andSkeleton
(transaction skeletons)Tx.Constraints.Optics
was short and dealt with skeletons so its content is now inSkeleton
Misc
were used byWallet
. They have been moved to that module andMisc
has been removed.Balance
has been removedWallet
andRawUPLC
are now at the top level: they were not closely linked to the concept ofMockChain
import Cooked
brings everything to scope. The tests use that.Tweak
module directory is now at the top level, outside ofAttack
MockChain
module is now flat and theMonad
module calledBlockChain