If your first instinct is to create a huge framework that does
type checking and your own flavor of classes -- this is a sure
sign you're heading in the wrong direction.
You look at it from a "getting useful stuff done" perspective. Writing a half-baked OO framework is both fun and pedagogically interesting; the temptation to do so in a language like Lua is just overwhelming for a beginner, and there's nothing wrong with it.
Your point of view is that they'd rather write useful code than a 200-th OO layer in Lua; another perspective is that they'd rather do that than play Angry Birds :)