Live briefing
Everything about Guarded Command Language
Dijkstra notation with non-deterministic conditionals
The Guarded Command Language (GCL) is a programming language defined by Edsger Dijkstra for predicate transformer semantics in EWD472. It combines programming concepts in a compact way. It makes it easier to develop a program and its proof hand-in-hand, with the proof ideas leading the way; moreover, parts of a program can actually be calculated. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Guarded Command LanguageA 5-minute orientation
- Pick up a classic book: The influence of Greek ideas and usages upon the Christian churchThe most-reprinted book on the subject
- Read the landmark paper: Probabilistic models for the guarded command languageCited 108 times
- Go sideways: Predicate transformer semanticsA closely related topic
- Go sideways: PromelaA closely related topic
📖 Definitions
No dictionary entry for this exact phrase.
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
Probabilistic models for the guarded command language
Operational versus weakest pre-expectation semantics for the probabilistic guarded command language
A Virtual Machine for Supporting Reversible Probabilistic Guarded Command Languages
Quantum Guarded-Command Language (qGCL) for Maximum Value
Static checking of variable handling in Dijkstra's Guarded Commands language
Derivation of Quantum Guarded Command Language Program for Average
📚 Books worth reading
The influence of Greek ideas and usages upon the Christian churchEdwin Hatch · 1890
The Conspirators HierarchyJohn Coleman · 1992
The boy-savers' guideQuin, George Edward · 1908
Real World HaskellBryan O'Sullivan, John Goerzen · 2008
Some motives in pagan educationMcCarthy Sister Mary Katharine · 1914
The Art Of OS/2 Warp ProgrammingKatheleen Panov, Larry Salomon Jr., Arthur Panov · 1995
Angular 2 Development with TypeScriptYakov Fain, Anton Moiseev · 2017
Anecdotes and examples illustrating the Catholic catechismFranz Spirago, James Joseph Baxter · 1904
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Predicate transformer semantics Predicate transformer semantics were introduced by Edsger Dijkstra in his seminal paper "Guarded commands, nondeterminacy and formal derivation of programs"…
- Promela PROMELA (Process or Protocol Meta Language) is a verification modeling language introduced by Gerard J. Holzmann. The language allows for the dynamic creation…
- Conditional (computer programming) In computer programming, a conditional statement directs program control flow based on the value of a condition; a Boolean expression. A conditional expression…
- Short-circuit evaluation Short-circuit evaluation, minimal evaluation, or McCarthy evaluation (after John McCarthy) is the semantics of some Boolean operators in some programming…
- Block (programming) In computer programming, a block of source code is a grouping of statements that execute in sequential order, top to bottom. The block structure is fundamental…
- Control flow In software, control flow (or flow of control) describes how execution progresses from one command to the next. In many contexts, such as machine code…
- Interference freedom In computer science, interference freedom is a technique for proving partial correctness of concurrent programs with shared variables. Hoare logic had…
- Structured programming Structured programming is a programming paradigm characterized by source code that uses block-based source code structure to encode control flow such as…