Variables which are not explicitly initialized, are initialized to Undefined. Hence, it is never an error to assign Undefined to a variable (even though Undefined might not belong to the type of the variable).
Undefined is often used as a substitute for exceptions (which are not supported in Slim). Programs that are still being debugged, can be expected to enter the debugger when an expression results in Undefined.
See also: The ? operator.