For
better or worse eval handles two
very different roles:
- eval STRING is used to generate new code during run-time by evaluating the string during run-time.
- eval BLOCK is used for exception handling and is not not evaluated during run-time.
No idea why something more obvious like "catch" was not used for eval blocks, but that oversight has certainly led to lots of confusion.
Elda Taluta; Sarks Sark; Ark Arks