Comment Comment by wyager If you aren't aware of it, the dimensional library for Haskell does this. https://hackage.haskell.org/package/dimensional parent wyager 11 years ago