¶Stack values cannot be quotations
2023-09-17
Thinking more about how to handle “stack values” in Swanson, which we've already decided should be first-class.
As things currently stand, a stack value is isomorphic to a single-branch quotation that pushes the contents of the stack value onto the working stack.
In a non-linear stack language, those two things are not just isomorphic — they're actually the same thing in the language. There is no distinct stack value, there are only quotations. The quote primitive pops a value off the stack and creates a
In a linear language like S₀, there needs to be a clear distinction between
That means that we