Programming Languages Study Set HW1-HW3 Definitions and Key Terms

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

1/43

flashcard set

Earn XP

Description and Tags

Vocabulary study cards covering core programming language concepts, implementation models, bindings, scoping, memory management, and data types from HW1-HW3.

Last updated 7:10 PM on 10/7/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

44 Terms

1
New cards

Expressivity

How easy or difficult a programming language makes it to write a computation.

2
New cards

Orthogonality

When a programming language has a small set of basic features that can be combined in a small number of consistent ways to build programs.

3
New cards

Writability

How easy it is for a programmer to use a language to write code and solve a problem. It should be considered with respect to a problem domain.

4
New cards

Abstraction Support

How well a programming language lets you use complex structures or operations without needing to focus on all of the underlying details.

5
New cards

Exception Handling

How a programming language deals with runtime errors so the program can respond to the problem and keep running.

6
New cards

Case-Sensitive Names

Names that differ only by uppercase and lowercase letters are treated as different names.

7
New cards

Multiple-Line Comment

A comment that uses delimiters at the beginning and end and can span multiple lines.

8
New cards

One-Line Comment

A comment that starts with a delimiter and automatically ends at the end of the line.

9
New cards

Linker

Takes compiled program code and required library or operating-system code and combines them into an executable program.

10
New cards

Compilation

Translates source code into machine or object code before the program runs.

11
New cards

Interpretation

Executes a program through an interpreter rather than translating the entire program to machine code before execution.

12
New cards

Hybrid Implementation

Combines compilation and interpretation, such as Java compiling source code to bytecode that runs on the JVM.

13
New cards

Imperative Language

A language in which statements tell the computer the steps to follow to solve a problem.

14
New cards

Declarative Language

A language in which statements describe what should be accomplished without specifying every step for doing it.

15
New cards

Source Code

Code written by the programmer in a programming language.

16
New cards

Object Code

Machine-level code produced after source code is compiled.

17
New cards

Binding

An association between an entity and an attribute, such as connecting a variable to a type, value, or memory location.

18
New cards

Binding Time

The time at which a binding is created.

19
New cards

Language Design Time

When language features, syntax, and certain predefined names or rules are chosen.

20
New cards

Language Implementation Time

When details of a particular implementation of a language are chosen.

21
New cards

Compile Time

The period when source code is translated and checked by the compiler.

22
New cards

Link/Load Time

When separately compiled program units are combined and loaded into memory.

23
New cards

Execution Time

The period while the program is running.

24
New cards

Static Binding

A binding that occurs before execution and normally does not change while the program runs.

25
New cards

Dynamic Binding

A binding that occurs while the program is running.

26
New cards

Stack-Dynamic Variable

A variable whose storage is allocated when its declaration is reached during execution and deallocated when that program unit finishes.

27
New cards

Lifetime

The period of time during program execution when a variable is bound to a specific memory location.

28
New cards

Scope

The part of a program where a variable or name is visible and can be referenced.

29
New cards

Static Scoping

Determines which variable is referenced based on the program's source-code structure.

30
New cards

Dynamic Scoping

Determines which variable is referenced based on the calling sequence of active program units.

31
New cards

Referencing Environment

The collection of all names or variables visible to a statement at a particular point in a program.

32
New cards

Primitive Data Type

A data type that is not defined using other data types.

33
New cards

Array

A collection of elements of the same data type where each element is identified by its position or index.

34
New cards

Ordinal Data Type

A data type whose possible values can be placed in a one-to-one correspondence with a set of integers and have a defined order.

35
New cards

Call Stack

An area of memory used to keep track of active function or method calls.

36
New cards

Heap

An area of memory used for dynamically allocated data.

37
New cards

Dangling Reference

A reference or pointer that still points to a memory location after that memory has been deallocated.

38
New cards

Reserved Word

A word that is part of a programming language's syntax and cannot be used as a programmer-defined name.

39
New cards

Java Reserved Words: for and public

In Java, for and public are reserved words; main is not a reserved word.

40
New cards

Row-Major Order

An array storage method in which all elements of one row are stored consecutively before the next row.

41
New cards

Unicode

A character-encoding standard designed to represent characters from many languages and symbol sets.

42
New cards

ASCII

A smaller character-encoding standard originally using 7 bits and representing a limited set of characters.

43
New cards

Bytecode

Intermediate code produced by some compilers, such as Java, that is executed by a virtual machine.

44
New cards

JVM

Java Virtual Machine; the runtime environment that executes Java bytecode.