Tim> Optimizing compilers do this routinely under the covers, where the Tim> (misnamed in this case) "verification" code simply branches to a Tim> slower all-purpose translation of the code if the assumptions turn Tim> out to be false at runtime. As does/did Self (without explicit type declarations)... ;-) Skip