Let's say I export a nimrod proc which can raise an exception, and this exception is not caught. My C code calls the exported nimrod proc as a C function and the exception happens (hello Murphy!). What will happen at this point with the exception, the execution flow and the handling of the return value? Will the universe implode? Should a C interface of all nimrod procs be wrapped around a try block just in case on the nimrod side and communicate this to the C caller through an error pointer or similar mechanism?