Talk:Falsish
Falsish isn't a huge change to FALSE, but the changes do prompt some different thinking. The stack of stacks allows for more encapsulated functions. Just give them their own stack with the correct number of arguments. This eliminates a major source of errors in Forth-like languages. The increased number of variable slots is welcome, especially when using the globals and locals appropriately.
McChuck (talk) 16:16, 4 November 2022 (UTC)
Alternate uses for `
Would it be better to use '`' for something else? Could we use it as a meta or alt character, sort of like ' is used to push the value of a character. As such, it could have any number of uses, at the expense of further obfuscation of the code. (This sort of matches the original intent of the character - assembly language insertion.) For example, we could make every variable a stack, and `: would push a new value in, while `; would pop a value out. ` followed by white space could still be a break, of course. The possibilities are huge. What would `` do? Oh, the glorious obfuscation!
McChuck (talk) 16:18, 4 November 2022 (UTC)
Turing completeness
A reversible stack is essentially a deque. Or, if you prefer, conceptually it is two separate stacks that just happen to share components. You can perform completely separate operations on either end. The risk lies in forgetting to reverse it back to the original configuration.
I believe that makes Falsish more securely a Turing complete language than the original FALSE.