• OmnipotentEntity@beehaw.org
    link
    fedilink
    arrow-up
    0
    ·
    1 year ago

    This is a cool idea. There are other programming languages that have libraries that expose similar behavior. For instance, Rust has the uom crate, Haskell has the units package, and C++ has the header only library SI.

    But there is something to be said about it being built in.

    • kureta@lemmy.ml
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      The web page says other libraries implement units whereas they implement dimensions. 1 cm and 1 inch has the same dimension, namely length, and you are able to add them together and get a correct result. seems nice. I don’t know if it’ll have any practical benefit but I like it.

      • Starfighter@discuss.tchncs.de
        link
        fedilink
        arrow-up
        2
        ·
        edit-2
        1 year ago

        I can’t talk about the other libraries but the uom crate does the same thing.

        The dimensions are encoded as a vector of generics, allowing you to get the correct unit even when dividing a distance by time for example.

        It’s quite the clever use of Rusts type system.