Считается, что значительная просадка производительности интерпретации вызвана проверкой типов в рантайме. Возникла такая идея. Что если на уровне интерпретатора реализовать только базовые типы выражений, минимальное их количество, а уже на уровне пользователя писать метациклический интерпретатор, расширяющий базовые типы. Многие типы, и вообще многие фичи, программисту могут не понадобиться в конкретном приложении, поэтому можно избежать многих ненужных проверок. А целевое приложение писать уже на расширенном языке. Получается своего рода DSL. Дала бы такая техника написания программ значительный прирост производительности?