5.95 How to check if name is assigned a value?

For simple variable, use assigned

restart; 
x:=10: 
assigned(x) 
                              true 
assigned(y) 
                             false
 

For a field in table do

restart; 
A:=table(["x"=10,"y"=20]): 
 
assigned(A["x"]) 
                              true 
assigned(A["z"]) 
                             false
 

For field in Record, I do not know how yet, other than using try catch, as assigned does not seem to work for Record fields.

restart; 
A:=Record('x'=10,'y'=20); 
try 
   assigned(A:-x) 
catch: 
   print("no such field in record") 
end try; 
 
                              true 
 
try 
   assigned(A:-z) 
catch: 
   print("no such field in record") 
end try; 
 
                   "no such field in record"