Меня немного смущает компилируемый язык (компиляция в собственный код) с динамической типизацией. Динамическая типизация говорит о том, что типы в программе предполагаются только во время выполнения.
Теперь, если язык скомпилирован, во время выполнения не работает интерпретатор; это просто ваш ЦП считывает инструкции из памяти и выполняет их. В таком сценарии, если какая-либо инструкция, нарушающая семантику типов языка, выполняется во время выполнения, нет интерпретатора, который мог бы перехватить выполнение программы и выдать какие-либо ошибки. Как тогда работает система?
Что происходит, когда инструкция, нарушающая семантику типов динамически типизированного компилируемого языка, выполняется во время выполнения?
PS: Некоторые из известных мне динамически типизированных компилируемых языков включают Scheme, Lua и Common Lisp.