1. A method for building an application, comprising: providing an application builder that receives source code instruction of a program; determining the minimum amount of optimum code requirement for the source code instruction; wherein the determining comprises: determining variable size of program functions in the program based on a set of constraints; wherein the determining variable size comprises: If a variable is discrete, hard-coding a single value; and if a first variable is assigned to a second variable, then merging a size constraint of the first variable into a size constraint of the second variable; reducing the variable size of the program functions for program execution based on the determination of the variable size; and compiling the program functions into native processor functions comprising native functions that return a declared type, native functions that return a fixed set of types, and native functions that return types that vary according to input parameters of the native functions; wherein the compiling comprises performing specialized type constraint analysis for the native functions to determine return type constraints associated with the returns based on input type constraints according to the specification of the native functions.