Use LEFT and RIGHT arrow keys to navigate between flashcards;
Use UP and DOWN arrow keys to flip the card;
H to show hint;
A reads text to speech;
10 Cards in this Set
- Front
- Back
- 3rd side (hint)
6 Reasons for Studying Concepts |
• + capacity to express ideas • improved background for choosing appropriate languages • + ability to learn new languages • better understanding of the significance of implementation • better use of languages that are already known • overall advancement of computing |
IBLIKA |
|
5 Programming Domains |
• Scientific Applications - modelling, computations, Fortran • Business Applications - COBOL • Artificial Intelligence - LISP, Prolog • Systems Programming - C • Web Software - web apps, servers |
SBASW |
|
4 Language Categories or Paradigms |
Imperative Functional Logical Object-Oriented |
IFLO |
|
7 Language Evaluation Criteria |
- Readability - Writability (Simplicity and Orthogonality, Support for Abstraction, Expressivity) - Portability - Generality - Well-definedness |
RWRCPGW |
|
3 Language Design Trade-offs |
Reliability vs Cost of execution Expressivity (writability) vs Readability Flexibility vs Safety |
R v C E v R F v S |
|
Influence of Language Design: Computer Architecture |
Von Neumann Architecture Fetch-Execute Cycle |
|
|
Influence: Programming Methodologies |
Cost of computing: hardware -> software Software development: procedure oriented -> data oriented New prog paradigms, new prog lang |
|
|
Prog Methodologies Timeline |
1950s and early 1960s - machine efficiency Late 1960s - structured programming Late 1970s - data abstraction Middle 1980s - object-oriented programming |
|
|
4 Implementation Methods |
Compilation Pure Interpretation Hybrid Implementation Systems |
|
|
Programming Environment |
a collection of tools used in software dev (file system, text editor, linker, compiler, IDE) |
|