9. A voice browser for executing voice applications to perform a voice-based function, the voice browser comprising: a communication interface configured to: receive a first request for a document; retrieve the document in response to the first request; a processor communicatively coupled to the communication interface, the processor configured to: parse document to create a parse tree, the parse tree including an XML node; create script code from the parse tree; replace the node with script code, thereby consuming part of the parse tree to create a reduced parse tree; and translate the script code to bytecode segments; a memory communicatively coupled to the processor, the memory configured to store the reduced parse tree and the bytecode segments in a cache for subsequent execution in response to a second request for the document, the reduced parse tree and bytecode segments configured for execution to perform the voice-based function; and the processor further configured to, in response to the second request: determine whether bytecode corresponding to the document is stored in a cache; responsive to determining that bytecode corresponding to the document is already stored in the cache: bypass the retrieving, parsing, creating, replacing, translating and storing steps associated with the second request; and execute the cached bytecode.
10. The voice browser of claim 9 , wherein the communication interface is configured to communicate with a plurality of communication channels, each communication channel independently executing the cached bytecode.