- add tests
- agree on naming convention
- split up code into seperate files
- refactor functions
-
casemacro should throw an error if not all cases are exhausted - remove debuging statements
- add constructor building for each union case and "bang" macros/functions for runtime checks
- support catch-all statement (_) in
casemacro, but only when explicitly enabled - add documentation and specs for library's functions & macros
- add documentation and specs for union's dynamically generated functions & macros
- test if removing
casesfiled from protocol instance into module attrinute/function is beneficial - add more sophiscated example (in another repo)
- see how well DiscUnion plays with rob-brown/MonadEx, slogsdon/elixir-control and rmies/monad