Advanced Topics¶
Diagram¶
You can use d3 and graphviz for diagramming.
Error Handling¶
The equivalent of an infinite loop for Flow Based approaches seems to be an infinite cycle within the Data Flow. This is also a problem with the Nodes being called repeatedly, even if it exits after processing, which would be equivalent to Stack Overflow. Then there are Exceptions and Deadlocks.
Open Problems,
Detect cycles at the graph level ?
What if a component goes berserk, who raises the exception then ?
How can exceptions and the faulty data pathways be represented visually ?
Should FBP depend on host-provided exceptions ?
Should you stop all flow or Ignore and do something else ?
Dynamic Nodes¶
You can create anonymous nodes and update the graph live, even after taking user input.
Supervising Nodes¶
Lets assume a component A fails, is there some mechanism for restarting the component A and all its connected components ?
Others,
Debugging
Tracing
Profiling
Relay Nodes
Serialization
Memory Leaks
Data Racing
Process Control
Syntax, DSL
Type Checking
Partial Nodes
Recursion
Dynamic Nodes
Timers
Complex Loops
Multiplexing