Would have caught a fair number of my bonehead errors.
Later, moving to C and various scripting languages, I just sort of kept doing the same thing. Work units out old school, then comment whatever equations made sense in the program, and then do math, deciding on fixed or floating point depending...
I will have to give Julia a look. Seems intriguing.
Yes, it has implicit multiplication! :) It also offers exact rational fractions, transparent bigint conversion, and plus/minus intervals that automatically tracks error bars through all arithmetic operations.
Docs: https://futureboy.us/frinkdocs
Online REPL: https://futureboy.us/fsp/frink.fsp?fromVal=1+furlong+%2F+for...
[Unexpectedly humorous] units data file: https://futureboy.us/frinkdata/units.txt
Julia has the advantage that you can do things with it that aren't unitful calculations, a classic 80% solution. Frink has the advantage that, well... it's Frink. Really nothing else like it.
Were you thinking of a specific feature set in Julia that's lacking in Frink? Thanks.
You could use Frink for things that aren't its focus, of course. But few would want to.
One of the hidden gems of Julia is that it performs multiplication by juxtaposition, so if you define a variable `m`, then `2m` becomes `2 * m`. That plus overloading and multiple dispatch enables a rather nice library, Unitful[1], which does a fairly good job there.
[1]: (Julia indexes by one) https://github.com/PainterQubits/Unitful.jl