as given in example of #17
if that could not work (e.g. we then need to add closure's space into fingerprinted signature, and somehow cannot/should not do that) -- we should raise some exception (might be NotImplementedError("caching on functions with closures is not supported"))
the same probably would go for functions accessing global variables space, but I guess it is nothing we could deduce/control for, right?