A graph that has arrows on its edges is called a directed graph:
But sometimes we have data that is undirected, allowing us to travel in both directions along an edge. Such a graph is less busy than a directed graph, and can be easier to understand:
The following code expands our graph utilities with new functions that let us draw undirected graphs:
(defun uedges->dot (edges) (maplist (lambda (lst) (mapc (lambda (edge) (unless ...