- Don't type check top-level contexts multiple times - Use validateDecl() instead of typeCheckDecl() when possible