Programming Languages Test 1

45 flashcardsby Temple
Study these flashcardsFree · spaced repetition · iPhone, Android, Mac & web

All cards

1
Syntax refers to what?
Syntax is the form or structure of expressions, statements, and program units.
2
Semantics refers to what?
Semantics is the meaning of expressions, statements, and program units.
3
What do syntax and semantics together define?
Syntax and semantics together define a programming language.
4
What is a lexeme?
A lexeme is the lowest-level syntactic unit of a language, such as a symbol or keyword.
5
What is a token?
A token is a category of lexemes, like identifiers or operators.
6
What is the purpose of a recognizer in programming languages?
A recognizer reads input strings and determines if they belong to the language.
7
Who developed Context-Free Grammars?
Noam Chomsky developed Context-Free Grammars in the mid-1950s.
8
What is Backus-Naur Form (BNF)?
BNF is a notation used to describe the syntax of programming languages.
9
What are non-terminal symbols in BNF?
Non-terminal symbols in BNF are abstractions representing syntactic structures.
10
What is a derivation in the context of grammars?
A derivation is a repeated application of rules starting with the start symbol, leading to a sentence.
11
What is a sentential form?
A sentential form is any string of symbols in a derivation process.
12
What is an ambiguous grammar?
A grammar is ambiguous if it generates a sentential form with two or more distinct parse trees.
13
What are the three primary methods of semantics description?
The three primary methods of semantics description are operational, denotational, and axiomatic.
14
Reasons for studying programming languages?
To increase the ability to express ideas, choose appropriate languages, and improve learning and implementation of languages.
15
What are scientific applications known for?
They require large numbers of floating point computations and use arrays, often in Fortran.
16
What are business applications known for?
They produce reports and use decimal numbers and characters, commonly in COBOL.
17
What is important in systems programming?
Efficiency is crucial due to the continuous use of system resources.
18
What language is often used in artificial intelligence?
LISP is frequently used in artificial intelligence for manipulating symbols rather than numbers.
19
What are the key criteria for evaluating programming languages?
Readability, writability, reliability, and cost.
20
What does readability in a programming language depend on?
It depends on simplicity, orthogonality, data types, and syntax considerations.
21
What is writability in a programming language?
Writability refers to how easily a language can be used to create programs, relying on simplicity, abstraction, and expressivity.
22
How does reliability relate to programming languages?
Reliability refers to a language’s conformance to specifications and its ability to avoid errors through type checking and exception handling.
23
What are the types of programming language implementation methods?
Compilation, pure interpretation, and hybrid implementation.
24
What is the von Neumann architecture?
It is a computer architecture where data and programs are stored in memory, with instructions and data piped from memory to the CPU.
25
What is the von Neumann bottleneck?
It refers to the limited connection speed between a computer's memory and processor, which restricts computing speed.
26
What are Just-in-Time (JIT) systems?
They initially translate programs to an intermediate language and then compile it to machine code during execution, as used in Java and .NET.
27
What is a programming environment?
It is a collection of tools used for software development, such as UNIX or Microsoft Visual Studio.
28
What is the main trade-off in language design?
Balancing reliability, cost, readability, and writability.
29
What was Zuse’s Plankalkül known for?
It was designed in 1945 but not published until 1972, and featured advanced data structures like floating-point arrays and records.
30
What problem did pseudocodes aim to solve?
Pseudocodes improved readability, modifiability, and addressed the limitations of machine code, like the lack of indexing and floating-point operations.
31
What was Fortran designed for?
Fortran was designed for scientific applications, emphasizing machine efficiency and array handling, without string or decimal handling.
32
What was the significance of Fortran I?
Fortran I was the first implemented version of Fortran, introduced in 1957, and was known for post-test loops and fast code.
33
What was the main change in Fortran 77?
Fortran 77 introduced character string handling, logical loop control, and the IF-THEN-ELSE statement.
34
What is LISP known for?
LISP, designed for AI research, is a functional language that processes data in lists rather than arrays and uses symbolic computation.
35
What are the two data types in LISP?
LISP only has two data types: atoms and lists.
36
What was ALGOL 60's main contribution?
ALGOL 60 was the first machine-independent language, with a block structure and formal syntax definition using BNF.
37
What language was based on FLOW-MATIC?
COBOL was based on FLOW-MATIC and used for business applications, featuring English-like syntax and separate data and code.
38
What was BASIC designed for?
BASIC was designed for non-science students, aiming to be easy to learn and use, with fast homework turnaround and time-sharing capabilities.
39
What did PL/I combine?
PL/I combined features of scientific and business computing, designed by IBM to support both types of applications.
40
What were the key features of APL and SNOBOL?
Both APL and SNOBOL had dynamic typing and storage allocation, with APL excelling in array operations and SNOBOL in string pattern matching.
41
What did SIMULA 67 introduce?
SIMULA 67 introduced classes, objects, inheritance, and coroutines, pioneering data abstraction.
42
What language influenced Pascal?
ALGOL 68 influenced Pascal, which became widely used for teaching structured programming.
43
What is Java known for?
Java is an object-oriented language based on C++, known for eliminating unsafe features and supporting concurrency, applets, and portability.
44
What does C# combine?
C# combines features from C++, Java, and Delphi, evolving rapidly as part of the .NET platform.
45
What are scripting languages used for?
Scripting languages like Perl, PHP, and Python are often used for web development, with client-side or server-side processing.
Study all 45 cards for free