1. A computer system comprising: a logical processor; a memory in operable communication with the logical processor; a reduced size runtime which resides in the memory and is executable with the logical processor, the reduced size runtime functioning as a replacement for a larger runtime R, the reduced size runtime occupying less nonvolatile storage space than the larger runtime R as a result of containing less metadata than the larger runtime R, wherein metadata includes one or more of the following: a type name, a type member name, a type layout for garbage collection purposes, or a type member layout for garbage collection purposes; and at least one of the following dynamic support structures in the memory and outside of the reduced size runtime: a mapping between metadata and at least one native code runtime artifact; a mapping between runtime type descriptions, each runtime type description including at least one of the following: a list of implemented interfaces for a type which is in an execution scope of a compiled computer program, or a garbage collection layout for a type which is in an execution scope of the compiled computer program; or at least one piece of code which upon execution supports a reflection invocation of an artifact of the compiled computer program.