Live briefing
Everything about Imperative programming
Type of programming paradigm in computer science
In computer science, imperative programming is a software programming paradigm that provides specific instructions for how computations should take place. This paradigm may use statements that may change a process’s state. In much the same way that the imperative mood in natural languages expresses commands, an imperative program consists of commands for the computer to perform. Imperative programming focuses on describing how a program operates step by step, rather than on high-level descriptions of its expected results. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Imperative programmingA 5-minute orientation
- Skim a recent paper: Imperative Genetic ProgrammingInfluential work since 2022
- Pick up a classic book: Revised report on the algorithmic language ALGOL 68The most-reprinted book on the subject
- Read the landmark paper: On the computational complexity of imperative programming languagesCited 22 times
- Go sideways: Computer programA closely related topic
- Go sideways: Static variableA closely related topic
📖 Definitions
Noun A programming paradigm that describes the computation in statements.
🏆 Landmark papers (most cited)
On the computational complexity of imperative programming languages
A categorical model for higher order imperative programming
Community-Based Programming: An Opportunity and Imperative for the Community College
Automatic Grid workflow based on imperative programming languages
Blending imperative and relational programming
Reversing an imperative concurrent programming language
Parma—bridging the performance gap between imperative and logic programming
A symbolic analysis framework for static analysis of imperative programming languages
🆕 Influential since 2022
Imperative Genetic Programming
Program Derivation and Mechanized Verification of Imperative Dynamic Programming Algorithms
BXtendDSL at Work: Combining Declarative and Imperative Programming of Bidirectional Model Transformations
Imperative Compositional Programming: Type Sound Distributive Intersection Subtyping with References via Bidirectional Typing
Analysis of Datasets and Large Language Models for Vulnerability Detection in Imperative Programming Language Code
📚 Books worth reading
Revised report on the algorithmic language ALGOL 68Cornelis H. A. Koster, Charles H. Lindsey · 1976
Multiparadigm Programming Using F# and .NETAli Baghernejad · 2019
IndictmentsDr. Andrej Poleev · 2010
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Computer program A computer program is a sequence or set of instructions in a programming language for a computer to execute. It is one component of software, which also…
- Static variable In computer programming, a static variable is a variable that has been allocated "statically", meaning that its lifetime (or "extent") is the entire run…
- Const In some programming languages, const is a type qualifier (a keyword applied to a data type) that indicates that the data is read-only. While this can be…
- Constant (computer programming) In computer programming, a constant is a value that is not altered by the program during normal execution. When associated with an identifier, a constant…
- New and delete (C++) In the C++ programming language, new and delete are a pair of language constructs that perform dynamic memory allocation, object construction and object…
- Field (computer science) In data hierarchy, a field (data field) is a variable in a record. A record, also known as a data structure, allows logically related data to be identified…
- This (computer programming) this, self, and Me are keywords used in some computer programming languages to refer to the object, class, or other entity which the currently running…
- C++ classes A class in C++ is a user-defined type or data structure declared with any of the keywords class, struct or union (the first two are collectively referred…