I don't believe there would be a problem with lazy initialization. However I think my thought process behind writing the code was I wanted to initialize ?unitsToFundamentalFormCache at compile time, and the code in the repo simulated that.
If there is no easy automatic way to set that up, perhaps assigning ?unitsToFundamentalFormCache with an initial value is a better solution than computing the units dynamically?
As a side note I noticed that the protected variables appear in the Global State plugin in the IDE, is there a way to prevent this so that they cannot be unassigned?
Kory