Converting existing code or executables to another programming language, environment, or architecture.