unitdc-rs
FsFrink
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
unitdc-rs
-
Frink is a programming language designed to make physical calculations simple
I found this one, but I haven't tested it:
https://github.com/eternal-flame-AD/unitdc-rs
I ran across it because I wanted to know if dc, the old Unix rpn calculator, could do units.
-
UnitDC: an RPN calculator that linearly combines units automatically
Github Page
FsFrink
-
Frink is a programming language designed to make physical calculations simple
I came across this repo where someone actually took the time to convert Frink's unit data to F# (which also supports units of measure) and I got to wondering if Frink's inspired it.
https://github.com/avestura/FsFrink
BTW, I'd love to see more mainstream languages consider features like units of measure. I understand the tech-debt it would likely-incur, but I think it would be a fun mental exercise to really go through the different languages and ask how one might add units of measure.
For example, in F#, the units are erased when they're compiled, so there is no runtime support for units. But I could imagine a dynamic/weaker typed language implementing it with runtime support where units are implemented like atomic symbols that are paired with numbers. Maybe each compound unit could be represented with a unique symbol that's created at runtime.
Personally, I don't think languages explore enough with interesting literals. Combining units with non-numeric types like strings might make interpolation a little more interesting.
What are some alternatives?
dimensioned - Compile-time dimensional analysis for various unit systems using Rust's type system.
units - The home of the units Haskell package
rink-rs - Unit conversion tool and library written in rust