1. In a computing environment comprising at least one computer processor and computer-readable storage media, a method for determining an E-matching code tree from one or more patterns, the method comprising: accessing one or more patterns; compiling each of the one or more patterns into a code sequence, each code sequence comprising one or more instructions, each of the one or more instructions being from a set of instructions comprising init, bind, check, compare, choose, yield, and backtrack, the set of instructions comprising an E-matching code tree abstract machine; labeling each of the one or more instructions in the each code sequence resulting from compiling each of the one or more patterns, each labeled instruction comprising a pair of the form n:instr, where n is a label, and instr is the instruction itself; combining the labeled instructions into a code tree, the tree corresponding to the common structure of the one or more patterns; and recording the code tree in a computer-readable storage medium.