Feature suggestion
Some issues, like #18, will always be subject to floating-point error due to the nature of a degree being irrational number of radians. This is a more general symptom of a wider issue — when treating with non-SI units, Noether still implicitly stores the value in SI.
It could potentially be useful if a ._basis: Unit | None property was added that, if present, provides a context unit for ._value and ._stddev.
For example, degree(30) would now be represented similarly to (30, degree) rather than (0.523598..., radian).
Feature suggestion
Some issues, like #18, will always be subject to floating-point error due to the nature of a degree being irrational number of radians. This is a more general symptom of a wider issue — when treating with non-SI units, Noether still implicitly stores the value in SI.
It could potentially be useful if a
._basis: Unit | Noneproperty was added that, if present, provides a context unit for._valueand._stddev.For example,
degree(30)would now be represented similarly to(30, degree)rather than(0.523598..., radian).