Возможно. Я просто с непривычки не соображу, какие тут схемы применения частые покрыты будут.

По поводу сопоставления типа. Простой IS выполняется так: известен level сопоставляемого типа. В дескрипторе любого типа прямая таблица всех базовых типов. Обращаемся obj->type->base[level] и сравниваем с проверяемым типом.

WITH, видимо, как IF x IS... ELSIF x IS...
Табличной оптимизации тут не видится; да и вряд ли она что-то даст.