1/25
Vocabulary flashcards covering key concepts, evaluation criteria, paradigms, and execution models from CS Lecture 1.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Algorithm
The procedure or idea for solving a problem.
Pseudocode
An informal, language-independent way to describe an algorithm, focusing on logic before syntax.
Program
An implementation of a solution in a particular programming language.
Programming Language
A formal language used to express computations a computer can perform.
High-Level Languages
Languages that provide greater abstraction from hardware details.
Assembly Language
A symbolic representation of machine-level instructions.
Machine Language
Instructions closest to the hardware.
General-Purpose Language
A programming language designed for a broad range of applications, such as Python, Java, C++, or C#.
Domain-Specific Language
A programming language designed around a particular problem domain, such as SQL for databases or Verilog for hardware.
Readability
A language evaluation criterion measuring how easy it is to understand programs written in the language.
Writability
A language evaluation criterion measuring how easy it is to create programs in the language.
Reliability
A language evaluation criterion measuring the extent to which a program performs according to its specifications under expected conditions.
Cost (Language Evaluation)
A language evaluation criterion encompassing training, development, execution, implementation, and maintenance costs.
Programming Paradigm
A fundamental approach to organizing and expressing computation.
Imperative Programming
A programming paradigm focused on commands, sequence, state, and state changes, describing step-by-step how computation proceeds.
Object-Oriented Programming
A programming paradigm focused on objects, classes, state, and behavior.
Functional Programming
A programming paradigm focused on functions, expressions, composition, and transformations, emphasizing immutability and recursion.
Logic Programming
A programming paradigm focused on facts, relationships, rules, and queries.
Declarative Programming
A paradigm family that emphasizes what result or relationship is desired rather than how to perform the computation step-by-step.
Multi-Paradigm Languages
Programming languages that combine multiple paradigms rather than restricting code to a single paradigm.
Compilation
The language processing approach that translates source code before execution into another form, often machine code.
Interpretation
The language processing approach that executes source code or an intermediate representation directly through a runtime system.
Hybrid Execution
A language processing approach that combines translation and runtime execution, such as compiling source code to bytecode for execution on a runtime machine.
Encapsulation
An object-oriented programming concept that bundles state and behavior together.
Inheritance
An object-oriented programming concept that allows sharing and extending behavior between classes.
Polymorphism
An object-oriented programming concept where the same interface supports different behaviors.