SMNP language doesn't have any sophisticated error handling mechanism, however, you are still able to raise errors using throw statement.
The throw construction is inspired by Java language, however instead of
throwing exceptions SMNP language allows you only to throw string values.
When control flow meet throw statement, program execution is immediately interrupted
and Execution Error is raised with message passed to throw statement.
Example:
If you try to invoke e.g. divide(2, 0) the following error will be raised:
SMNP language does not support any equivalent of try-catch statements known from
other languages. Because the SMNP is not aimed at building complex systems
and there is simply no need to implement sophisticated error handling system
in simple music, you are actually unable to implement more advanced multi-layer
error handling system.