Everything about Flow-based programming
Data-flow programming paradigm
In computer programming, flow-based programming (FBP) is a programming paradigm that defines applications as networks of black box processes, which exchange data across predefined connections by message passing, where the connections are specified externally to the processes. These black box processes can be reconnected endlessly to form different applications without having to be changed internally. FBP is thus naturally component-oriented. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Flow-based programmingA 5-minute orientation
- Skim a recent paper: Arc flow formulations based on dynamic programming: Theoretical foundations and applicationsInfluential work since 2022
- Pick up a classic book: Principles of program analysisThe most-reprinted book on the subject
- Read the landmark paper: Evolutionary programming based optimal power flow algorithmCited 377 times
- Go sideways: DataflowA closely related topic
- Go sideways: Dataflow programmingA closely related topic
📖 Definitions
Noun A dataflow-oriented programming paradigm in which an application is specified as an externally defined network of independently executing, asynchronous processes that communicate through streams of discrete information packets transmitted between named ports over bounded-buffer connections.
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
Evolutionary programming based optimal power flow algorithm
Implementation of a Large-Scale Optimal Power Flow Solver Based on Semidefinite Programming
Hydrothermal optimal power flow based on a combined linear and nonlinear programming methodology
MW/voltage control in a linear programming based optimal power flow
Linear/quadratic programming-based optimal power flow using linear power flow and absolute loss approximations
An efficient interior point method for sequential quadratic programming based optimal power flow
TCSC Allocation Based on Line Flow Based Equations Via Mixed-Integer Programming
Sequential quadratic programming based differential evolution algorithm for optimal power flow problem
🆕 Influential since 2022
Arc flow formulations based on dynamic programming: Theoretical foundations and applications
Fully-Decentralized Optimal Power Flow of Multi-Area Power Systems Based on Parallel Dual Dynamic Programming
Semi-Definite Programming Based Scalable and Accurate Optimal Power Flow Models for Radial Distribution Networks
Three-phase optimal power flow for networked microgrids based on semidefinite programming convex relaxation
Next generation of flow analysis is based on flow programming
📚 Books worth reading
Principles of program analysisFlemming Nielson, Hanne Riis Nielson · 1999
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Dataflow In computing, dataflow is a broad concept, which has various meanings depending on the application and context. In the context of software architecture…
- Dataflow programming In computer programming, dataflow programming is a programming paradigm that models a program as a directed graph of the data flowing between operations…
- Pipeline (software) In software engineering, a pipeline consists of a chain of processing elements (processes, threads, coroutines, functions, etc.), arranged so that the…
- Prograph Prograph is a visual, object-oriented, dataflow, multiparadigm programming language that uses iconic symbols to represent actions to be taken on data.…
- Stream processing In computer science, stream processing (also known as event stream processing, data stream processing, or distributed stream processing) is a programming…
- Visual programming language In computer programming education, a visual programming language, block coding system or diagrammatic programming language, is a programming language that…
- Dataflow architecture Dataflow architecture is a dataflow-based computer architecture that directly contrasts the traditional von Neumann architecture or control flow architecture…
- Binary Modular Dataflow Machine BMDFM running on various operating systems Binary Modular Dataflow Machine (BMDFM) is a software package that enables running an application in parallel…