Code
-- ../../../M2/Macaulay2/m2/methods.m2:456-458
cacheValue = key -> f -> x -> (
c := try x.cache else x.cache = new CacheTable;
if c#?key then c#key else c#key = f x)
| symbol class value location of symbol
| ------ ----- ----- ------------------
| f : FunctionClosure -- ... ../../../M2/Macaulay2/m2/methods.m2:456:20-456:20
| key : Symbol -- inverse ../../../M2/Macaulay2/m2/methods.m2:456:13-456:13
| -- function f:
| -- ../../../M2/Macaulay2/m2/matrix1.m2:660
| inverse Matrix := (cacheValue symbol inverse) ( m -> id_(target m) // m )