Concepts of Programming Languages - Chapter 1 Flashcards

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/31

flashcard set

Earn XP

Description and Tags

A set of vocabulary flashcards covering the key concepts, evaluation criteria, and implementation methods of programming languages as presented in Robert W. Sebesta's lecture notes.

Last updated 9:57 AM on 6/6/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

32 Terms

1
New cards

Readability

The ease with which programs can be read and understood.

2
New cards

Writability

The ease with which a language can be used to create programs.

3
New cards

Reliability

The conformance of a program to its specifications; i.e., it performs as intended.

4
New cards

Cost

The ultimate total cost of a language, including programmer training, program writing, execution, maintenance, and the consequences of poor reliability.

5
New cards

Orthogonality

A criteria for readability and writability where a relatively small set of primitive constructs can be combined in a relatively small number of ways, and every possible combination is legal.

6
New cards

Abstraction

The ability to define and use complex structures or operations in ways that allow details to be ignored.

7
New cards

Expressivity

A set of relatively convenient ways of specifying operations, including the strength and number of operators and predefined functions.

8
New cards

Type checking

The process of testing for type errors to improve reliability.

9
New cards

Exception handling

The ability of a language to intercept run-time errors and take corrective measures.

10
New cards

Aliasing

The presence of two or more distinct referencing methods for the same memory location.

11
New cards

Portability

The ease with which programs can be moved from one implementation to another.

12
New cards

Generality

The applicability of a programming language to a wide range of applications.

13
New cards

Well-definedness

The completeness and precision of the official definition of a language.

14
New cards

von Neumann architecture

An architecture where data and programs are stored in memory; the memory is separate from the CPU, and instructions and data are piped from memory to the CPU.

15
New cards

Fetch-execute-cycle

The process of initializing the program counter, fetching an instruction, incrementing the counter, decoding the instruction, and executing it.

16
New cards

Imperative languages

Languages whose central features are variables, assignment statements, and iteration, modeled after von Neumann architecture.

17
New cards

Functional languages

Languages in which the main means of making computations is by applying functions to given parameters.

18
New cards

Logic languages

Rule-based languages where rules are specified in no particular order, such as Prolog.

19
New cards

Markup/programming hybrid

Markup languages extended to support programming, such as JSTL or XSLT.

20
New cards

Compilation

An implementation method where high-level program code is translated into machine language for fast execution.

21
New cards

Pure Interpretation

An implementation method where programs are interpreted by an interpreter program without translation, often executing 1010 to 100100 times slower than compiled programs.

22
New cards

Hybrid Implementation Systems

A compromise between compilers and pure interpreters where a high-level language is translated to an intermediate language to allow easy interpretation.

23
New cards

Lexical analysis

The compilation phase that converts characters in the source program into lexical units.

24
New cards

Syntax analysis

The compilation phase that transforms lexical units into parse trees representing the syntactic structure of the program.

25
New cards

Semantics analysis

The compilation phase that involves generating intermediate code.

26
New cards

Code generation

The compilation phase where machine code is actually generated.

27
New cards

Load module

The combination of the user code and system code in an executable image.

28
New cards

Linking and loading

The process of collecting system program units and linking them to a user program.

29
New cards

von Neumann bottleneck

The primary limiting factor in computer speed caused by the connection speed between a computer's memory and its processor.

30
New cards

Just-in-Time (JIT) Implementation Systems

Systems that initially translate programs to intermediate language and then compile subprograms into machine code only when they are called.

31
New cards

Preprocessor

A system that processes a program immediately before compilation to expand embedded macros like #include and #define.

32
New cards

Programming Environments

A collection of tools used in software development, such as Microsoft Visual Studio .NET or NetBeans.