Overview of Programming Languages Flashcards
Why do we study programming language concepts?
- Express ideas
- Ability to learn new languages
- Understanding the significance of implementation
Give 3 words that identify the Language Evaluation Criteria
- Readability
- Writability
- Reliability
What is readability?
easily read your syntax
What does readability include?
- Overall simplicity
- Orthogonality
- Data types
- Syntax design
- Form and Meaning
Define Overall simplicity
Syntax is shorter and does not take up much space
Define Orthogonality
small set of constructs can be combined in a small number of ways
Define Data Types
facilities to define data types and structures
Define Syntax Design
Special words from the programming language
Define form and meaning
statement indicate its purpose
Define Writability
How easily a language can be used to create programs
Writability includes?
- Simplicity and orthogonality
- Support for abstraction
- Expressivity
Define Reliability
performs the specifications under all conditions
Reliability includes?
- Type checking
- Exception handling
- Aliasing
- Readability and Writability
What are the 7 language categories?
- Imperative
- Functional
- Logic
- Object Oriented
- Scripting
- Markup/Hybrid
- Special purposes languages
Define Compilation
translates source code to machine language
Define Lexical analyzer
identifiers, special words, operators and punctuation symbols
Define Syntax Analyzer
uses lexical units to form parse trees
Define Intermediate Code
Produces a program in a different language
Define Semantic analyzer
Checks for errors not detected
Define Optimization
Improves program by making it smaller or faster
Define Code Generator
translates code to machine language
Define Symbol Table
contains type and attribute information of user defined names
Define Pure Interpretation systems
- programs are interpreted with no translation
- easy to debug but execution is slower and requires more space
Define Hybrid Interpretation System
translates high level language to an intermediate language designed for easy implementation
This hardware specifies that the code from another file is to be included and processes a program before the program is compiled
Preprocessors