What are the goals of the language? Below are a list of guiding principles
in the design of programming languages.
Most of which are listed in your textbook.
Principles may be conflicting. No language can accomplish all goals.
During 1950s–1960s – Compile programs to execute efficiently.
- There was a direct connection between language features and hardware – integers, reals, goto statements
- Programmers cheap;
- Machines expensive;
- Keep the machine busy
- Compile programs that are built efficiently
- CPU power and memory very cheap
- Direct connection between language features and design concepts – encapsulation, records, inheritance, functionality, assertions
General attributes of a good language
Clarity, simplicity, and unity – provides both a framework for thinking about algorithms and a means of expressing those algorithms
Orthogonality -every combination of features is meaningful
Naturalness for the application – program structure reflects the logical