summaryrefslogtreecommitdiff
path: root/README.org
diff options
context:
space:
mode:
authorKarlo Miličević <karlo98.m@gmail.com>2025-05-29 20:12:47 +0200
committerKarlo Miličević <karlo98.m@gmail.com>2025-05-29 20:12:47 +0200
commit03860d2a744368b3514087943f2694485e56224d (patch)
tree1dddb2d5bb4aaffa51dfcff7632a23fe26bc37b1 /README.org
Initial commitHEADmaster
Diffstat (limited to 'README.org')
-rw-r--r--README.org26
1 files changed, 26 insertions, 0 deletions
diff --git a/README.org b/README.org
new file mode 100644
index 0000000..af2c917
--- /dev/null
+++ b/README.org
@@ -0,0 +1,26 @@
+* topo
+A tiny unix-like utility for resolving arbitrary graph dependencies.
+It takes no arguments and has no flags.
+It also provides a tiny shell script that visualizes graphs.
+
+* Interaction
+| STDIN | input graph |
+| STDOUT | result |
+| STDERR | errors |
+
+** Input
+*** Form 1
+These are lines that look like two names separated by a space.
+Let's say these two names were =a= and =b=.
+This means =a= is being blocked (or depending on) =b=.
+=b= would first have to be resolved for =a= to be able to run.
+
+*** Form 2
+These are lines that look like a single name with no space.
+Let's say the line was =a=.
+This means =a= is complete, allowing other nodes which depend on it to be run if they have no other dependencies unresolved.
+
+*** Form 3
+These are empty lines.
+After receiving this query it outputs on the STDOUT nodes which can be resolved.
+Output is a single line containing names of nodes followed by a space.