Dynamic[x=7]; does not make
x dynamic! But
x dynamic with initial value 7. The problem with the later is the presence of
Null in the output. My question is: how can I assign a (big) value (or a huge list, etc.) to a dynamic variable AND suppress any possible output (including
Dynamic doesn't work the way you think it does. See this answer for a full explanation.
Dynamic doesn't do anything until it is actually displayed on screen.
Dynamic is only updated if it is displayed.
Dynamic; is never displayed so it is never updated.
Dynamic[...;] returns a dynamic that always returns
Null, but is never the less updated.
Here is an example that demonstrates the problem:
x = .5; Dynamic[Print["will not print:", x]]; Dynamic[Print["Should print:", x];] Slider@Dynamic@x