1. A method for compiling a program, comprising the steps of: (a) processing a source program including program statements in a first computer language and embedded program statements in a second computer language; (b) determining, for each program statement in the source program, whether a program statement is in one of the first computer language and the second computer language; (c) lexically scanning and parsing the program statement into a parse tree in response to determining that the statement is in the first computer language; (d) processing the program statement, after determining that the program statement is in the second computer language, by performing the steps of: (i) lexically scanning the program statement; (ii) accessing a plurality of function calls capable of executing the program statement; and (iii) translating the function calls for the program statement into at least one parse tree; and (e) converting the parse trees to target code.