Shape grammars have recently shown promise in engineering applications. The need to efficiently implement such grammars, rather than hard code them, in a way that supports creativity through shape emergence has still remained an ongoing research challenge. This paper introduces a shape grammar interpreter that supports parametric shape recognition, and thereby shape emergence. The approach divides shapes into hierarchies of subshapes based on specified geometric relationships within the shape. A default hierarchy based on geometric relations often found in engineering and architectural designs is presented as an efficient example of one appropriate hierarchy. A classic shape grammar demonstrates the interpreter’s shape recognition and generation abilities.