Dynamic Type Checking In Compiler Design