Is it possible to have an expression
x such that its elements are only evaluated when they are individually accessed, for example when evaluating statements like
f/@x? The basic idea is that
x is a list of
Get commands, each of which loads a large expression (gigabytes), so that
x can be terabytes in size yet it remains fairly manipulable within Mathematica.
What I thought would work was something like:
The problem with that however is that
Unevaluated doesn't get stripped when I need it to, i.e. when calling something like
f[x[]], because of Mathematica's evaluator semantics. The only workable alternative is to use
Hold instead of
Unevaluated, but that requires that I manually call
ReleaseHold every time, which is ugly. I was hoping for something entirely transparent.