1/11
Twelve Q&A flashcards covering major points from Chapter 1: reasons for study, domains, evaluation criteria, von Neumann architecture, language categories, trade-offs, and implementation methods.
Name | Mastery | Learn | Test | Matching | Spaced |
---|
No study sessions yet.
What are three key reasons for studying concepts of programming languages?
1) Increased ability to express ideas, 2) Improved background for choosing appropriate languages, 3) Increased ability to learn new languages (others include better understanding of implementations and better use of known languages).
Which programming domain manipulates symbols rather than numbers and frequently uses linked lists?
The Artificial Intelligence (AI) programming domain.
In language evaluation, how is Readability defined?
The ease with which programs can be read and understood.
Within readability, what does Orthogonality mean?
A small set of primitive constructs that can be combined in a relatively small number of ways, where every combination is legal.
According to the lecture, what three central features characterize imperative languages?
Variables, assignment statements, and iteration.
What is the von Neumann bottleneck?
The limited speed of the connection between memory and CPU, which becomes the primary limiting factor in overall computer speed.
Give an example of the reliability vs. cost-of-execution trade-off discussed in the lecture.
Java checks every array reference for proper indexing, improving reliability but increasing execution cost.
Name the three primary methods for implementing programming languages.
Compilation, Pure Interpretation, and Hybrid Implementation Systems.
During compilation, which phase converts characters of the source program into lexical units?
Lexical Analysis.
What main advantage do Hybrid Implementation Systems have over Pure Interpretation?
They execute faster because source code is first translated to an intermediate language that is easier to interpret.
Prolog belongs to which language category, and what distinguishes that category?
Logic languages; they are rule-based, with rules specified in no particular order.
In a Just-in-Time (JIT) implementation system, what happens when a subprogram is called for the first time?
Its intermediate code is compiled into machine code, which is then stored for faster subsequent calls.