ABSTRACT

The true language of computers is a stream of 1s and 0s—bits. Everything in the computer, be it numbers or text or program, spreadsheet or database or 3-D rendering, is nothing but an array of bits. This chapter examines variable allocation and how it can be optimized, and the optimization task of constant expression removal. It explores the variety of paradigms embodied in a number of high-level languages (HLLs). Inheritance in a programming language like SmallTalk, Object Pascal, and C++ means even greater abstraction because code can be reused without being understood. HLLs differ from one another in the abstractions they support. Abstract views of the world are called paradigms, and the guiding principle of any HLL is its programming paradigm. Functional HLLs are higher level than procedural languages because they reduce the number of symbols needed to encode a solution as a program.