dag - library to manage processing via directed acyclic graphs
func main() {
var dataSource task.DataSource
stream := dag.Serial(
task.Enrich(dataSource),
task.Canonicalize(toCanonical),
task.Normalize("foo", normalizer)
)
stream.Use(middleware)
ctx := context.Background()
record := &dag.Record{}
err := task.Apply(ctx, record)
}