1. A method implemented on a computing device for executing dynamic software language code, comprising: compiling the dynamic software language code to encode hashtable string keys as hashtable integer keys; storing the encoded hashtable integer keys in a software hashtable maintained in a memory accessible by software; loading a portion of the encoded hashtable integer keys stored in the software hashtable into a dedicated hardware hashtable implementation via a first dedicated hardware instruction, receiving a request for a hashtable value; determining whether the requested hashtable value is in the dedicated hardware hashtable implementation; and executing a hashtable look-up in the software hashtable to retrieve the requested hashtable value in response to determining that the requested hashtable value is not in the dedicated hardware hashtable implementation.