1. A method comprising: preprocessing, by a computer, a dependency graph corresponding to a set of grammar rule nodes for a particular programming language in order to generate an updated dependency graph, said preprocessing comprising, for each group of cyclically connected grammar rule nodes in said dependency graph, combining said group so that said group is represented in said updated dependency graph by a single grammar rule node and so that said updated dependency graph is devoid of cyclically connected grammar rule nodes; partitioning, by said computer, said set of grammar rules for said particular programming language into logical subsets based on said updated dependency graph; generating, by said computer and for each one of said logical subsets, textual code for a corresponding portion of a parsing program; converting, by said computer for each one of said logical subsets, said textual code for said corresponding portion of said parsing program into machine-readable code for said corresponding portion of said parsing program; and merging, by said computer, all machine-readable code for all portions of said parsing program.