Runtime Compilation, Code Generation and Specialization Techniques