compile
This function passes the program through each possible compilation step, returning either CompilationSuccess in case of success or CompilationFailure otherwise
Parameters
program
represents the program to be compiled
This function passes the program through each possible compilation step, returning either CompilationSuccess in case of success or CompilationFailure otherwise
represents the program to be compiled