Recompilation refers to the process of recompiling a program or code. This could be done in order to fix any errors that were present during the first compilation, or to optimize the code for a specific platform or environment. There are a number of synonyms that can be used to describe the process of recompilation. Some of these include recompiling, rebuilding, reassembling, reworking, rehashing and revamping. Each of these terms conveys a similar idea, and could be used interchangeably depending on the context. Regardless of the specific terminology used, the process of recompilation remains an essential part of software development.