Programming languages can either be compiled or interpreted;compiled languages are programs that are fully translated from source code toobject code, for the target system to read in its specific language given tothe processor and OS. On the other hand, interpreted languages are interpretedby the system line by line by another program – the interpreter which is oftenspecialised for a certain computer. To interpret the language means totranslate it to the system’s equivalent of that language, it could also be doneby converting the program into a transitional code that can then be interpretedto the system’s specific language by the interpreter. It depends on thepurpose of a program for whether compiled or interpreted is better, but each hasgeneral advantages/disadvantages that do not change.
Compiled languages aremuch faster due to the not having every line of code individually interpretedwhen the program is booted or while running, but instead read directly by thecomputer. However, versions that are not compiled can be ported to many differentsystems as interpreters will make the program usable while compilers are a lotmore difficult to develop. C++ is a common compiled language, many game engines such asCryEngine, Blender, and Unity are built in C++ as powerful object-oriented programming (OOP) language. An OOPlanguage differs from procedural oriented programming (POP) in several ways –OOP has sections called objects that hold functions and data, this allowsobjects to be modified much easier than in POP, where the code just followsprocedures (instructions that follow a specific order of statements). As inprocedural languages, when new functions are added many modules will probablyneed to be changed – while object languages can add objects without changes asthey can inherit data/functions due to objects already created.