The Truthiness (or Ignorability?) of Trash

After Stepping Away And Coming Back, I See It Clearly

TRASH! Should Be Neither Truthy Nor Falsey

The reason is, that TRASH! is what you get when you haven't defined a return result for your function yet. You haven't committed it to "vanishing" semantics with a VOID!. You haven't committed to NULL. You just wrote the function as a PROC, or a FUNC with return: [trash!]

Effectively, you have not made a contract with your callers yet. You haven't promised you'll never return anything.

The very pleasing idea we now have is that ~ is quasiform VOID!, not TRASH!

So the assignment is thrown out by the ANY.

1 Like