Advantages and Disadvantages of Compiled Languages
Compiled languages are unmanaged languages. They typically have their source code written in a language humans can fully understand. For the processor to execute the source code, it needs to be translated into machine code though. A compiler completes this process. The compiler compiles the whole program in to the machine code.
Put differently, a compiler simply reads the program and translates the program before it begins running. The high-level program is thus referred to as the source code while the program that is translated is known as the executable or object code. When the program is compiled, it can be executed multiple times without the need for any further translation.
Here are some advantages and disadvantages of Compiled Languages:
1.) They are fast. It is only in the course of a one-time compilation that the program slows down. When the program is compiled, it runs just as fast as a program written in ASM, or even faster owing to compiler optimizations.
2.) There is inaccessibility of source code. Modifying a program distributed in compiled form is difficult if you lack the source code.
3.) It provides ease of detecting errors in the source code. If there happens to be an error in the source code, the whole process of compilation crashes and you, the programmer, automatically gets to see where you messed up.
1.) The program has a platform dependency, that is on the OS or the processor. You cannot take a pre-compiled program and then run it on a different platform without tweaking or recompiling it somehow.
2.) You cannot edit it. After the compilation of a program into machine code, there is no other way of editing it; re-compiling is the only way.
3.) Issues of memory management. Computers execute instructions mechanically; this makes it likely to run into sporadic errors related to memory overflows. The compiled languages do not come with automatic memory management features and thus, they tend to be more of a hassle in this respect. The main cause of run-time errors is manual memory management the compilation cannot detect. Pascal, C language and C++. it’s successor, are examples of compiled languages.