Undefined values: Difference between revisions

Explained Oz.
No edit summary
(Explained Oz.)
Line 48:
{}.c == null
</lang>
 
=={{header|Oz}}==
A program that uses an undefined variable does not compile.
However, variables can be "unbound" or "free". If a program tries to read such a variable, the current thread will be suspended until the variable's value becomes determined.
 
<lang oz>declare X in
 
thread
if {IsFree X} then {System.showInfo "X is unbound."} end
{Wait X}
{System.showInfo "Now X is determined."}
end
 
{System.showInfo "Sleeping..."}
{Delay 1000}
{System.showInfo "Setting X."}
X = 42</lang>
 
Explicitly checking the status of a variable with <code>IsFree</code> is discouraged because it can introduce race conditions.
 
=={{header|Perl}}==
Anonymous user