Dgsh – Directed Graph Shell

pcr910303 | 135 points

Python's mario is another terminal-oriented tool with concurrent task execution, but with async concurrency rather than multiprocess parallelism.

For example, to get a bunch of urls concurrently

$ mario async-map 'await asks.get ! x.text' < urls.txt

https://github.com/python-mario/mario

j88439h84 | 4 years ago
dang | 4 years ago

Thanks for sharing - I was previously pondering a bit how a generic graph pipe shell syntax would look - I might try this out myself soon :)

Legogris | 4 years ago

1980, operating systems class, write a shell for UNIX. I thought I'd be clever and do more than simple pipes, so I created some syntax to enable the specification of a directed graph. It's pretty neat to see that someone has now done this industrial strength.

keid | 4 years ago

Interesting effort. On the other hand there is a bunch of other more popular and battle tested tools from Apache Airflow to a bioinformatics pipelines managers, such as Nextflow, Snakemake etc.

elmolino89 | 4 years ago

Looks pretty interesting (automatically deleting duplicate files). Bookmarking to see if I can utilize this!

sdan | 4 years ago

Dgsh sounds like dogshit... Sorry

SeriousM | 4 years ago