Currently, it is a pain to define a newtype. Newtypes should be easy to define as they allow users to quickly set up a somewhat type-safe program. Once we decide to use a standard type class system, they will become even more important to properly deal with canonicity.
Example: Newtype User wrapping a natural number (“user id”):
Currently, it is a pain to define a newtype. Newtypes should be easy to define as they allow users to quickly set up a somewhat type-safe program. Once we decide to use a standard type class system, they will become even more important to properly deal with canonicity.
Example: Newtype
User
wrapping a natural number (“user id”):(Not too bad actually)
Proposed sugar: