1. A universal compiler adapted to receive a plurality of input files, and convert any of said plurality of input files into an output file, wherein said plurality of input files comprise a source code of an application written in a plurality of different programming languages, respectively, and said output file comprises an executable code of said application, and wherein said executable code is executable by an execution engine.