github.com/workanator/go-floc (go): Package floc allows to orchestrate goroutines with ease. The goal of the project is to make the process of running goroutines in parallel and synchronizing them easy.  Floc follows for objectives:  -- Easy to use functional interface.  -- Better control over execution with one entry point and one exit point.  -- Simple parallelism and synchronization of jobs.  -- As little overhead, in comparison to direct use of goroutines and sync primitives, as possible.  The package categorizes middleware used for architect flows in subpackages.  -- `guard` contains middleware which help protect flow from falling into panic or unpredicted behavior.  -- `pred` contains some basic predicates for AND, OR, NOT logic.  -- `run` provides middleware for designing flow, i.e. for running job sequentially, in parallel, in background and so on.  Here is a quick example of what the package capable of.
Keywords: go|golang-library|goroutine-order|goroutine-safe|goroutines|parallel-programming