Processes.jl

Processes.jl helps you build Julia loops from small named pieces.

An algorithm is a piece of loop code. It is a subtype of ProcessAlgorithm and usually defines Processes.step!.

A state is a piece of setup data. It is a subtype of ProcessState and usually defines Processes.init.

A process combines algorithms, states, inputs, and stop rules into a running loop. While it runs, values live in a context. Each algorithm or state gets its own named part of that context, called a subcontext.

The package keeps context shapes stable after setup, so tight loops can stay fast while still letting you compose larger workflows.

Start with the user documentation if you want to build processes with the package. The internals section is for understanding how registries, contexts, routing, and generated loops are implemented.

If you are new to the package, read these first:

  1. Algorithms and States
  2. Running, Wait, Fetch
  3. Contexts and Indexing
  4. Init, Overrides, and Runtime Inputs
  5. Routes and Shares
  6. Composite DSL

User Documentation

Internals