14. A non-transitory computer-readable medium having stored therein instructions which, when executed by a processor, cause the processor to perform a method comprising: comparing received speech with a precompiled grammar to yield a match result, wherein the precompiled grammar is based on a database; when the match result is above a threshold, returning a result based on matching data; and when the match result is below the threshold, comparing the received speech with a dynamically compiled grammar that is based only on new data added to the database after the precompiled grammar is compiled.
14. A non-transitory computer-readable medium having stored therein instructions which, when executed by a processor, cause the processor to perform a method comprising: comparing received speech with a precompiled grammar to yield a match result, wherein the precompiled grammar is based on a database; when the match result is above a threshold, returning a result based on matching data; and when the match result is below the threshold, comparing the received speech with a dynamically compiled grammar that is based only on new data added to the database after the precompiled grammar is compiled. 16. The non-transitory computer-readable medium of claim 14 , wherein the database comprises a directory of names.