Dynamic checking A lot of work has gone into speeding up the dynamic checker. This has involved tuning the interpreter and optimizing the generated code. Many people are interested in the correctness proof we have for the generated code. The optimizer has been added as a separate phase and can be switched on and off. It is also possible to mix and match optimized and unoptimized .kic files.
Benchmark figures suggest a four to five fold improvement in performance.
This makes mce the fastest interpreter of C code known to us, even with all the checking that it does. Some applications start up child processes. This is automatically handled by mce. However, sorting out the stack tracebacks can be difficult. The error reporting machinery now knows about multi threaded applications.