This paper explores the surprisingly rich design space for the simplytyped lambda calculus with casts and a dynamic type. Such a calculus is the targetintermediate language of the gradually typed lambda calculus but it is alsointeresting in its own right. In light of diverse requirements for casts, we developa modular semantic framework, based on Henglein’s Coercion Calculus, that instantiatesa number of space-efficient, blame-tracking calculi, varying in whaterrors they detect and how they assign blame. Several of the resulting calculi extendwork from the literature with either blame tracking or space efficiency, andin doing so reveal previously unknown connections. Furthermore, we introduce anew strategy for assigning blame under which casts that respect traditional subtypingare statically guaranteed to never fail. One particularly appealing outcomeof this work is a novel cast calculus that is well-suited to gradual typing.