ARCHIVE / What are the advantages of compiled versus interpreted languages?
As compiled languages tend to result in marginally faster applications, one might think that compiled languages should always be used instead of interpreted languages. However, there are many reasons for using interpreted languages rather than compiled ones. The primary reasons are that interpreted languages generally allow for faster development, easier updating and easier debugging with only a marginal increase in processing time. Interpreted languages also tend to be more portable, able to be run without being modified for different computing environments. In contrast, compiled languages take more time for development, updates and debugging but are generally faster to run and, quite importantly, difficult to reverse engineer. Because interpreted languages require the distribution of source code, proprietary software applications prefer to use compiled languages to prevent competitors (and customers) from seeing how their software was designed and built. By compiling into bytecode, however, otherwise interpreted languages such as Python and, to some extent, Java are effectively able to circumvent this issue while still remaining portable and being only marginally slower than if they were compiled into machine code.
last updated 2007.09.25
What is the difference between interpreted and compiled languages?