In working on the DNA language, I realized that everything we'd want more space for (well, almsot everything) than an integer can provide are involved in more complex stack manipulations more than storing to memory.
For instance, say you want to find the magnitude of a vector defined as <200,200>. The only way I really know to do it is take 200^2 + 200^2 and then square root it.
However, while 283 (the magnitdue) is less than 32000, the intermediate values you need to use to find 283 are much larger (80000 at one point).
So if we allow stack manipulations to use longs, this solves the problem.
Then, of course, we have to decide what to do when you try storing 86 million to .up. There are some possibilites:
1. Modular math. 32001 = 1. This is similar to bit shifting.
2. Simple cap. 32001 = 32000.
3. Wrap around. 32001 = -32000
I'd favor modular math.