Principles of Programming Languages

Programming languages are one of the most important and direct tools for the construction of a computer system. In a modern computer different languages are routinely used for different levels of abstraction. Programming languages are a fundamental means of expression. Algorithms implemented using diverse programming languages may display very different characteristics, that can be of artistic character, as higher level languages can be very synthetic and are usually very expressive; or in terms of performance, as fairly lower level languages allow a more direct organization of memory and in general of the performance of the generated code.