[Haskell-cafe] Unique Ordered Types
Richard Eisenberg
eir at cis.upenn.edu
Thu Aug 13 02:21:30 UTC 2015
Hi Silvio,
I'm the author of the units package. Yes, the types are annoying and painfully indirect, exactly because of the problem you identify.
CmpSymbol might work for you. Note that it works only on Symbols (type-level strings) and not arbitrary types. I didn't like it because I wanted it to be possible to leverage Haskell's module system to allow distinct units but with the same name, declared in different modules. (For example, "pound" can refer to a plethora of different units.) This requirement may have been a step too far, and I'd be curious to see how much the system could be simplified without it.
Good luck!
Richard
On Aug 12, 2015, at 7:41 PM, Silvio Frischknecht <silvio.frischi at gmail.com> wrote:
> Btw I think I found a solution in
>
> https://hackage.haskell.org/package/base-4.8.1.0/docs/GHC-TypeLits.html
>
> there is a type level sort
>
> type family CmpSymbol m n :: Ordering
>
> This might work.
>
> Silvio
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
More information about the Haskell-Cafe
mailing list