A method and system is provided that allows a well-behaved program to execute
more
quickly than dynamically typed programming languages did in the past, thereby allowing
a the dynamically typed language to be competitive with static declarative programming
languages. A method includes converting lines of source code representing functions
to byte-codes representing functions, selecting a subsequence of the byte-codes
based on the byte-codes and the dynamic run-time properties of program variables,
generating processor instructions in a compiler for the subsequence, and interpreting
the byte-codes not contained in the subsequence.