module absorbance; import quantities.base; import quantities.parsing; import quantities.si; import std.math; import std.stdio; alias Absorbance = Dimensionless; Absorbance absorbance(LuminousFlux incident, LuminousFlux transmitted) { return Absorbance(-log10(transmitted / incident)); } void main() { Absorbance a; a = absorbance(si!"4.23 lm", si!"2.87 lm"); writefln("Absorbance: %.3f", cast(double) a); }