1. A computer implemented method for an isolated program execution environment, the method comprising: receiving, by the isolated program execution environment on a computer comprising a processor and a memory, a request to run a program; wrapping program code corresponding to the program as a function; cloning a real global object of the isolated program execution environment to create a fake global object; passing the fake global object to the function; executing the function, such that the function executes the program; determining that the program requires an external module; determining whether the external module is stored in an immutable module cache of the isolated program execution environments; based on determining that the external module is stored in the immutable module cache: passing a reference to a cache entry corresponding to the external module to the program; and executing the external module by the program, wherein the program does not modify the external module during execution; based on determining that the external module is not stored in the immutable module cache: retrieving program code corresponding to the external module from a memory; compiling the retrieved program code to create a compiled module; sealing the compiled module so that the sealed compiled module is immutable; storing the sealed compiled module in the immutable module cache; passing a reference to a cache entry corresponding to the external module to the program; and executing the external module by the program, wherein the program does not modify the external module during execution.