Error message
In the message, %s marks a value that the engine fills in when it raises the error.
The story
A verb tried to carry more operands than its cell can hold, and the engine said stop. Every cell in the ExecHeap has a fixed number of payload slots, and each slot holds an immediate value up to a fixed size. This time, the vector was full and one more operand wanted in. The engine could have quietly dropped one. That would have been much worse. Imagine adding up a column of numbers where the last one silently disappears: you still get an answer, confidently, and it is wrong, and nothing in the whole system can tell. That is exactly the failure the type law fights one layer up, a wrong answer that claims success. A loud refusal is better, because you can act on it. The message names the cell and the limit that was reached. What can you do? If the verb really needs that many operands, raise RUSH_RUNHEAP_OPERAND_MAX in run.h and rebuild. If it was an accident, for instance a call with far too many arguments, reduce them. Either way, the engine will never compute over operands it silently lost.
Text from the Rush engine's error catalogue.
