can't figure out how to properly thunk eval yet...
wrap value type assignments into inplace lambda invocation