9133e251a03d

cl-digraph: Update site.
[view raw] [browse files]
author Steve Losh <steve@stevelosh.com>
date Fri, 20 Jan 2017 23:42:20 +0000
parents f3fc28996523
children 56c2fd5d673d
branches/tags (none)
files cl-digraph/changelog/index.html cl-digraph/reference-dot/index.html cl-digraph/reference/index.html cl-digraph/usage/index.html

Changes

--- a/cl-digraph/changelog/index.html	Fri Dec 23 10:50:32 2016 -0500
+++ b/cl-digraph/changelog/index.html	Fri Jan 20 23:42:20 2017 +0000
@@ -15,8 +15,13 @@
 <h1 id="changelog"><a href="">Changelog</a></h1><p>Here's the list of changes in each released version.</p>
 <div class="toc">
 <ul>
+<li><a href="#v110">v1.1.0</a></li>
 <li><a href="#v100">v1.0.0</a></li>
 </ul></div>
+<h2 id="v110">v1.1.0</h2>
+<p>Minor internal cleanup.</p>
+<p>If you pass an invalid <code>strategy</code> argument to <code>reachablep</code> there will now be
+a restart available to supply a new value, instead of just crashing and burning.</p>
 <h2 id="v100">v1.0.0</h2>
 <p>Initial version.</p>
                 </div>
--- a/cl-digraph/reference-dot/index.html	Fri Dec 23 10:50:32 2016 -0500
+++ b/cl-digraph/reference-dot/index.html	Fri Jan 20 23:42:20 2017 +0000
@@ -23,7 +23,7 @@
 </ul></div>
 <h2 id="package-digraphdot">Package <code>DIGRAPH.DOT</code></h2>
 <h3 id="draw-function"><code>DRAW</code> (function)</h3>
-<div class="codehilite"><pre>(DRAW DIGRAPH &amp;KEY (FILENAME digraph.png) (FORMAT :PNG))
+<div class="codehilite"><pre><span/>(DRAW DIGRAPH &amp;KEY (FILENAME digraph.png) (FORMAT :PNG))
 </pre></div>
 
 
--- a/cl-digraph/reference/index.html	Fri Dec 23 10:50:32 2016 -0500
+++ b/cl-digraph/reference/index.html	Fri Jan 20 23:42:20 2017 +0000
@@ -57,50 +57,50 @@
 </ul></div>
 <h2 id="package-digraph">Package <code>DIGRAPH</code></h2>
 <h3 id="contains-edge-p-function"><code>CONTAINS-EDGE-P</code> (function)</h3>
-<div class="codehilite"><pre>(CONTAINS-EDGE-P DIGRAPH PREDECESSOR SUCCESSOR)
+<div class="codehilite"><pre><span/>(CONTAINS-EDGE-P DIGRAPH PREDECESSOR SUCCESSOR)
 </pre></div>
 
 
 <p>Return whether the graph contains an edge from <code>predecessor</code> to <code>successor</code>.</p>
 <h3 id="contains-vertex-p-function"><code>CONTAINS-VERTEX-P</code> (function)</h3>
-<div class="codehilite"><pre>(CONTAINS-VERTEX-P DIGRAPH VERTEX)
+<div class="codehilite"><pre><span/>(CONTAINS-VERTEX-P DIGRAPH VERTEX)
 </pre></div>
 
 
 <p>Return whether the graph contains <code>vertex</code>.</p>
 <h3 id="copy-digraph-function"><code>COPY-DIGRAPH</code> (function)</h3>
-<div class="codehilite"><pre>(COPY-DIGRAPH DIGRAPH)
+<div class="codehilite"><pre><span/>(COPY-DIGRAPH DIGRAPH)
 </pre></div>
 
 
 <p>Create a fresh copy of <code>digraph</code>.</p>
 <p>The vertex objects themselves are not copied, but everything else is.</p>
 <h3 id="count-edges-function"><code>COUNT-EDGES</code> (function)</h3>
-<div class="codehilite"><pre>(COUNT-EDGES DIGRAPH)
+<div class="codehilite"><pre><span/>(COUNT-EDGES DIGRAPH)
 </pre></div>
 
 
 <p>Return the number of edges in <code>digraph</code>.</p>
 <h3 id="count-vertices-function"><code>COUNT-VERTICES</code> (function)</h3>
-<div class="codehilite"><pre>(COUNT-VERTICES DIGRAPH)
+<div class="codehilite"><pre><span/>(COUNT-VERTICES DIGRAPH)
 </pre></div>
 
 
 <p>Return the number of vertices in <code>digraph</code>.</p>
 <h3 id="degree-function"><code>DEGREE</code> (function)</h3>
-<div class="codehilite"><pre>(DEGREE DIGRAPH VERTEX)
+<div class="codehilite"><pre><span/>(DEGREE DIGRAPH VERTEX)
 </pre></div>
 
 
 <p>Return the number of neighbors of <code>vertex</code>.</p>
 <h3 id="degree-in-function"><code>DEGREE-IN</code> (function)</h3>
-<div class="codehilite"><pre>(DEGREE-IN DIGRAPH VERTEX)
+<div class="codehilite"><pre><span/>(DEGREE-IN DIGRAPH VERTEX)
 </pre></div>
 
 
 <p>Return the number of predecessors of <code>vertex</code>.</p>
 <h3 id="degree-out-function"><code>DEGREE-OUT</code> (function)</h3>
-<div class="codehilite"><pre>(DEGREE-OUT DIGRAPH VERTEX)
+<div class="codehilite"><pre><span/>(DEGREE-OUT DIGRAPH VERTEX)
 </pre></div>
 
 
@@ -108,20 +108,20 @@
 <h3 id="digraph-class"><code>DIGRAPH</code> (class)</h3>
 <p>A directed graph.  Use <code>make-digraph</code> to create one.</p>
 <h3 id="edges-function"><code>EDGES</code> (function)</h3>
-<div class="codehilite"><pre>(EDGES DIGRAPH)
+<div class="codehilite"><pre><span/>(EDGES DIGRAPH)
 </pre></div>
 
 
 <p>Return a fresh list of the edges of <code>digraph</code>.</p>
 <p>Each edge will be a cons of the form <code>(predecessor . successor)</code>.</p>
 <h3 id="emptyp-function"><code>EMPTYP</code> (function)</h3>
-<div class="codehilite"><pre>(EMPTYP DIGRAPH)
+<div class="codehilite"><pre><span/>(EMPTYP DIGRAPH)
 </pre></div>
 
 
 <p>Return <code>t</code> if <code>digraph</code> has no vertices or edges, <code>nil</code> otherwise.</p>
 <h3 id="insert-edge-function"><code>INSERT-EDGE</code> (function)</h3>
-<div class="codehilite"><pre>(INSERT-EDGE DIGRAPH PREDECESSOR SUCCESSOR)
+<div class="codehilite"><pre><span/>(INSERT-EDGE DIGRAPH PREDECESSOR SUCCESSOR)
 </pre></div>
 
 
@@ -130,7 +130,7 @@
 <p>Returns <code>t</code> if the edge was already in the graph, or <code>nil</code> if it was
   inserted.</p>
 <h3 id="insert-vertex-function"><code>INSERT-VERTEX</code> (function)</h3>
-<div class="codehilite"><pre>(INSERT-VERTEX DIGRAPH VERTEX)
+<div class="codehilite"><pre><span/>(INSERT-VERTEX DIGRAPH VERTEX)
 </pre></div>
 
 
@@ -138,7 +138,7 @@
 <p>Returns <code>t</code> if the vertex was already in the graph, or <code>nil</code> if it was
   inserted.</p>
 <h3 id="leafs-function"><code>LEAFS</code> (function)</h3>
-<div class="codehilite"><pre>(LEAFS DIGRAPH)
+<div class="codehilite"><pre><span/>(LEAFS DIGRAPH)
 </pre></div>
 
 
@@ -146,7 +146,7 @@
 <p>This is currently O(vertices).</p>
 <p>A root is a vertex with no outgoing edges (i.e. out-degree 0).</p>
 <h3 id="make-digraph-function"><code>MAKE-DIGRAPH</code> (function)</h3>
-<div class="codehilite"><pre>(MAKE-DIGRAPH &amp;KEY INITIAL-VERTICES (TEST #'EQL) (HASH-FUNCTION NIL))
+<div class="codehilite"><pre><span/>(MAKE-DIGRAPH &amp;KEY INITIAL-VERTICES (TEST #'EQL) (HASH-FUNCTION NIL))
 </pre></div>
 
 
@@ -157,7 +157,7 @@
   creating hash tables with custom predicates, you can specify one with
   <code>hash-function</code>.</p>
 <h3 id="map-breadth-first-function"><code>MAP-BREADTH-FIRST</code> (function)</h3>
-<div class="codehilite"><pre>(MAP-BREADTH-FIRST FUNCTION DIGRAPH START-VERTEX)
+<div class="codehilite"><pre><span/>(MAP-BREADTH-FIRST FUNCTION DIGRAPH START-VERTEX)
 </pre></div>
 
 
@@ -167,7 +167,7 @@
   and the resulting list has this order as well.</p>
 <p>Cycles in the graph will not be traversed into.</p>
 <h3 id="map-depth-first-function"><code>MAP-DEPTH-FIRST</code> (function)</h3>
-<div class="codehilite"><pre>(MAP-DEPTH-FIRST FUNCTION DIGRAPH START-VERTEX)
+<div class="codehilite"><pre><span/>(MAP-DEPTH-FIRST FUNCTION DIGRAPH START-VERTEX)
 </pre></div>
 
 
@@ -177,26 +177,26 @@
   the resulting list has this order as well.</p>
 <p>Cycles in the graph will not be traversed into.</p>
 <h3 id="map-edges-function"><code>MAP-EDGES</code> (function)</h3>
-<div class="codehilite"><pre>(MAP-EDGES FUNCTION DIGRAPH)
+<div class="codehilite"><pre><span/>(MAP-EDGES FUNCTION DIGRAPH)
 </pre></div>
 
 
 <p>Return a fresh list with the results of calling <code>function</code> on each edge.</p>
 <p>For each edge, <code>function</code> will be called once with two arguments:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="kd">function</span> <span class="nx">predecessor</span> <span class="nx">successor</span><span class="p">)</span>
+<div class="codehilite"><pre><span/>(function predecessor successor)
 </pre></div>
 
 
 <p>The order of the resulting list is unspecified.</p>
 <h3 id="map-vertices-function"><code>MAP-VERTICES</code> (function)</h3>
-<div class="codehilite"><pre>(MAP-VERTICES FUNCTION DIGRAPH)
+<div class="codehilite"><pre><span/>(MAP-VERTICES FUNCTION DIGRAPH)
 </pre></div>
 
 
 <p>Return a fresh list with the results of calling <code>function</code> on each vertex.</p>
 <p>The order of the resulting list is unspecified.</p>
 <h3 id="mapc-breadth-first-function"><code>MAPC-BREADTH-FIRST</code> (function)</h3>
-<div class="codehilite"><pre>(MAPC-BREADTH-FIRST FUNCTION DIGRAPH START-VERTEX)
+<div class="codehilite"><pre><span/>(MAPC-BREADTH-FIRST FUNCTION DIGRAPH START-VERTEX)
 </pre></div>
 
 
@@ -205,7 +205,7 @@
 <p>Vertices are processed in breadth-first order, beginning at <code>start-vertex</code>.</p>
 <p>Cycles in the graph will not be traversed into.</p>
 <h3 id="mapc-depth-first-function"><code>MAPC-DEPTH-FIRST</code> (function)</h3>
-<div class="codehilite"><pre>(MAPC-DEPTH-FIRST FUNCTION DIGRAPH START-VERTEX)
+<div class="codehilite"><pre><span/>(MAPC-DEPTH-FIRST FUNCTION DIGRAPH START-VERTEX)
 </pre></div>
 
 
@@ -214,20 +214,20 @@
 <p>Vertices are processed in depth-first order, beginning at <code>start-vertex</code>.</p>
 <p>Cycles in the graph will not be traversed into.</p>
 <h3 id="mapc-edges-function"><code>MAPC-EDGES</code> (function)</h3>
-<div class="codehilite"><pre>(MAPC-EDGES FUNCTION DIGRAPH)
+<div class="codehilite"><pre><span/>(MAPC-EDGES FUNCTION DIGRAPH)
 </pre></div>
 
 
 <p>Call <code>function</code> on each edge in <code>digraph</code>.</p>
 <p>For each edge, <code>function</code> will be called once with two arguments:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="kd">function</span> <span class="nx">predecessor</span> <span class="nx">successor</span><span class="p">)</span>
+<div class="codehilite"><pre><span/>(function predecessor successor)
 </pre></div>
 
 
 <p>The order in which the edges are processed is unspecified.</p>
 <p>Returns <code>nil</code>.</p>
 <h3 id="mapc-vertices-function"><code>MAPC-VERTICES</code> (function)</h3>
-<div class="codehilite"><pre>(MAPC-VERTICES FUNCTION DIGRAPH)
+<div class="codehilite"><pre><span/>(MAPC-VERTICES FUNCTION DIGRAPH)
 </pre></div>
 
 
@@ -235,19 +235,19 @@
 <p>The order in which the vertices are processed is unspecified.</p>
 <p>Returns <code>nil</code>.</p>
 <h3 id="neighbors-function"><code>NEIGHBORS</code> (function)</h3>
-<div class="codehilite"><pre>(NEIGHBORS DIGRAPH VERTEX)
+<div class="codehilite"><pre><span/>(NEIGHBORS DIGRAPH VERTEX)
 </pre></div>
 
 
 <p>Return a fresh list of the neighbors of <code>vertex</code>.</p>
 <h3 id="predecessors-function"><code>PREDECESSORS</code> (function)</h3>
-<div class="codehilite"><pre>(PREDECESSORS DIGRAPH VERTEX)
+<div class="codehilite"><pre><span/>(PREDECESSORS DIGRAPH VERTEX)
 </pre></div>
 
 
 <p>Return a fresh list of the predecessors of <code>vertex</code>.</p>
 <h3 id="reachablep-function"><code>REACHABLEP</code> (function)</h3>
-<div class="codehilite"><pre>(REACHABLEP DIGRAPH START TARGET &amp;KEY (STRATEGY :BREADTH-FIRST))
+<div class="codehilite"><pre><span/>(REACHABLEP DIGRAPH START TARGET &amp;KEY (STRATEGY :BREADTH-FIRST))
 </pre></div>
 
 
@@ -258,14 +258,14 @@
 <p><code>strategy</code> will be used to determine how to traverse the graph when searching
   for a path, and can be one of <code>:breadth-first</code> or <code>:depth-first</code>.</p>
 <h3 id="remove-edge-function"><code>REMOVE-EDGE</code> (function)</h3>
-<div class="codehilite"><pre>(REMOVE-EDGE DIGRAPH PREDECESSOR SUCCESSOR)
+<div class="codehilite"><pre><span/>(REMOVE-EDGE DIGRAPH PREDECESSOR SUCCESSOR)
 </pre></div>
 
 
 <p>Remove an edge from <code>predecessor</code> to <code>successor</code> if present.</p>
 <p>Returns <code>t</code> if there was such an edge, or <code>nil</code> if not.</p>
 <h3 id="remove-vertex-function"><code>REMOVE-VERTEX</code> (function)</h3>
-<div class="codehilite"><pre>(REMOVE-VERTEX DIGRAPH VERTEX)
+<div class="codehilite"><pre><span/>(REMOVE-VERTEX DIGRAPH VERTEX)
 </pre></div>
 
 
@@ -273,7 +273,7 @@
 <p>If there are any edges to/from <code>vertex</code> they will be automatically removed.</p>
 <p>Returns <code>t</code> if there was such a vertex, or <code>nil</code> if not.</p>
 <h3 id="roots-function"><code>ROOTS</code> (function)</h3>
-<div class="codehilite"><pre>(ROOTS DIGRAPH)
+<div class="codehilite"><pre><span/>(ROOTS DIGRAPH)
 </pre></div>
 
 
@@ -281,13 +281,13 @@
 <p>This is currently O(vertices).</p>
 <p>A root is a vertex with no incoming edges (i.e. in-degree 0).</p>
 <h3 id="successors-function"><code>SUCCESSORS</code> (function)</h3>
-<div class="codehilite"><pre>(SUCCESSORS DIGRAPH VERTEX)
+<div class="codehilite"><pre><span/>(SUCCESSORS DIGRAPH VERTEX)
 </pre></div>
 
 
 <p>Return a fresh list of the successors of <code>vertex</code>.</p>
 <h3 id="topological-sort-function"><code>TOPOLOGICAL-SORT</code> (function)</h3>
-<div class="codehilite"><pre>(TOPOLOGICAL-SORT DIGRAPH)
+<div class="codehilite"><pre><span/>(TOPOLOGICAL-SORT DIGRAPH)
 </pre></div>
 
 
@@ -298,7 +298,7 @@
 <p>The order in which the vertices are processed is unspecified.</p>
 <p>An error will be signaled if the graph contains a cycle.</p>
 <h3 id="vertices-function"><code>VERTICES</code> (function)</h3>
-<div class="codehilite"><pre>(VERTICES DIGRAPH)
+<div class="codehilite"><pre><span/>(VERTICES DIGRAPH)
 </pre></div>
 
 
--- a/cl-digraph/usage/index.html	Fri Dec 23 10:50:32 2016 -0500
+++ b/cl-digraph/usage/index.html	Fri Jan 20 23:42:20 2017 +0000
@@ -42,7 +42,7 @@
 symbols.</p>
 <h2 id="creating-digraphs">Creating Digraphs</h2>
 <p>Digraphs can be created with <code>make-digraph</code>:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nv">digraph:make-digraph</span><span class="p">)</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nv">digraph:make-digraph</span><span class="p">)</span>
 <span class="c1">; =&gt;</span>
 <span class="err">#</span><span class="nv">&lt;DIGRAPH:DIGRAPH</span> <span class="p">()</span> <span class="nv">{1002CFD343}&gt;</span>
 </pre></div>
@@ -51,7 +51,7 @@
 <h2 id="working-with-vertices">Working with Vertices</h2>
 <p>Vertices can be added to a digraph with <code>insert-vertex</code>, and a list of all
 vertices in the graph retrieved with <code>vertices</code>:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span> <span class="p">(</span><span class="nv">digraph:make-digraph</span><span class="p">))</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span> <span class="p">(</span><span class="nv">digraph:make-digraph</span><span class="p">))</span>
 
 <span class="p">(</span><span class="nv">digraph:vertices</span> <span class="vg">*d*</span><span class="p">)</span>
 <span class="c1">; =&gt; ()</span>
@@ -69,7 +69,7 @@
 <p>The order of vertices returned in the list is arbitrary.  We'll see how to
 retrieve vertices in specific orders later.</p>
 <p>Duplicate vertices are silently ignored:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span> <span class="p">(</span><span class="nv">digraph:make-digraph</span><span class="p">))</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span> <span class="p">(</span><span class="nv">digraph:make-digraph</span><span class="p">))</span>
 
 <span class="p">(</span><span class="nv">digraph:insert-vertex</span> <span class="vg">*d*</span> <span class="ss">'foo</span><span class="p">)</span>
 <span class="p">(</span><span class="nv">digraph:insert-vertex</span> <span class="vg">*d*</span> <span class="ss">'foo</span><span class="p">)</span>
@@ -81,7 +81,7 @@
 
 <p>You can also specify some initial vertices directly in the <code>make-digraph</code> call
 if you want:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
   <span class="p">(</span><span class="nv">digraph:make-digraph</span> <span class="ss">:initial-vertices</span> <span class="o">'</span><span class="p">(</span><span class="nv">a</span> <span class="nv">b</span> <span class="nv">c</span><span class="p">)))</span>
 
 <span class="p">(</span><span class="nv">digraph:vertices</span> <span class="vg">*d*</span><span class="p">)</span>
@@ -95,7 +95,7 @@
 
 <p>You can remove vertices with <code>remove-vertex</code>.  Removing a vertex that's not in
 the graph is silently ignored:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
   <span class="p">(</span><span class="nv">digraph:make-digraph</span> <span class="ss">:initial-vertices</span> <span class="o">'</span><span class="p">(</span><span class="nv">a</span> <span class="nv">b</span> <span class="nv">c</span><span class="p">)))</span>
 
 <span class="p">(</span><span class="nv">digraph:vertices</span> <span class="vg">*d*</span><span class="p">)</span>
@@ -115,7 +115,7 @@
 <p>By default cl-digraph compares vertices for equality with <code>eql</code>.  You can
 specify a different equality predicate with the <code>:test</code> argument to
 <code>make-digraph</code>:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
   <span class="p">(</span><span class="nv">digraph:make-digraph</span> <span class="ss">:test</span> <span class="nf">#'</span><span class="nb">equal</span><span class="p">))</span>
 
 <span class="p">(</span><span class="nv">digraph:insert-vertex</span> <span class="vg">*d*</span> <span class="p">(</span><span class="nb">list</span> <span class="mi">1</span> <span class="mi">2</span><span class="p">))</span>
@@ -138,7 +138,7 @@
 <p>If your Lisp implementation supports creating hash tables with custom hash
 functions with the <code>:hash-function</code> argument to <code>make-hash-table</code>, you can use
 them with cl-digraph as well:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
   <span class="p">(</span><span class="nv">digraph:make-digraph</span> <span class="ss">:test</span> <span class="nf">#'</span><span class="nv">some-predicate</span>
                         <span class="ss">:hash-function</span> <span class="nf">#'</span><span class="nv">custom-hash-function</span><span class="p">))</span>
 </pre></div>
@@ -149,7 +149,7 @@
 <p>Once you've got some vertices in a digraph you can add edges between them.  The
 vertex that an edge goes <em>out of</em> is called the <strong>predecessor</strong>, and the vertex
 the edge goes <em>into</em> is called the <strong>successor</strong>:</p>
-<div class="codehilite"><pre>┌─────────────┐      ┌─────────────┐
+<div class="codehilite"><pre><span/>┌─────────────┐      ┌─────────────┐
 │ predecessor │─────▶│  successor  │
 └─────────────┘      └─────────────┘
 </pre></div>
@@ -157,7 +157,7 @@
 
 <p>Edges are added with <code>insert-edge</code>.  A list of edges in a digraph can be
 retrieved with <code>edges</code>:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
   <span class="p">(</span><span class="nv">digraph:make-digraph</span> <span class="ss">:initial-vertices</span> <span class="o">'</span><span class="p">(</span><span class="nv">a</span> <span class="nv">b</span> <span class="nv">c</span><span class="p">)))</span>
 
 <span class="p">(</span><span class="nv">digraph:edges</span> <span class="vg">*d*</span><span class="p">)</span>
@@ -175,7 +175,7 @@
 
 <p>Duplicate edges are silently ignored.  The predecessor and successor must both
 exist in the graph already, or an error will be signaled:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
   <span class="p">(</span><span class="nv">digraph:make-digraph</span> <span class="ss">:initial-vertices</span> <span class="o">'</span><span class="p">(</span><span class="nv">a</span> <span class="nv">b</span> <span class="nv">c</span><span class="p">)))</span>
 
 <span class="p">(</span><span class="nv">digraph:insert-edge</span> <span class="vg">*d*</span> <span class="ss">'a</span> <span class="ss">'b</span><span class="p">)</span> <span class="c1">; a -&gt; b</span>
@@ -191,7 +191,7 @@
 
 <p>Edges can be removed with <code>remove-edge</code>.  Removing an edge that's not in the
 graph is silently ignored:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
   <span class="p">(</span><span class="nv">digraph:make-digraph</span> <span class="ss">:initial-vertices</span> <span class="o">'</span><span class="p">(</span><span class="nv">a</span> <span class="nv">b</span> <span class="nv">c</span><span class="p">)))</span>
 
 <span class="p">(</span><span class="nv">digraph:insert-edge</span> <span class="vg">*d*</span> <span class="ss">'a</span> <span class="ss">'b</span><span class="p">)</span> <span class="c1">; a -&gt; b</span>
@@ -208,7 +208,7 @@
 <h2 id="retrieving-digraph-information">Retrieving Digraph Information</h2>
 <p>Once you've got a digraph you might want to ask it about itself.  Let's consider
 a simple digraph as an example:</p>
-<div class="codehilite"><pre><span class="c1">;            ┌───┐      ┌───┐</span>
+<div class="codehilite"><pre><span/><span class="c1">;            ┌───┐      ┌───┐</span>
 <span class="c1">;   ┌───────▶│ B │─────▶│ D │</span>
 <span class="c1">;   │        └───┘      └───┘</span>
 <span class="c1">; ┌───┐</span>
@@ -230,7 +230,7 @@
 themselves.</p>
 <h3 id="vertices-and-edges">Vertices and Edges</h3>
 <p>We've already seen <code>vertices</code> and <code>edges</code>:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nv">digraph:vertices</span> <span class="vg">*d*</span><span class="p">)</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nv">digraph:vertices</span> <span class="vg">*d*</span><span class="p">)</span>
 <span class="c1">; =&gt; (BAR FOO D C B A)</span>
 
 <span class="p">(</span><span class="nv">digraph:edges</span> <span class="vg">*d*</span><span class="p">)</span>
@@ -243,7 +243,7 @@
 <h3 id="neighboring-vertices">Neighboring Vertices</h3>
 <p>The <code>predecessors</code> and <code>successors</code> functions return a list of vertices with
 edges to/from a particular vertex:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nv">digraph:predecessors</span> <span class="vg">*d*</span> <span class="ss">'a</span><span class="p">)</span> <span class="c1">; =&gt; ()</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nv">digraph:predecessors</span> <span class="vg">*d*</span> <span class="ss">'a</span><span class="p">)</span> <span class="c1">; =&gt; ()</span>
 <span class="p">(</span><span class="nv">digraph:successors</span> <span class="vg">*d*</span> <span class="ss">'a</span><span class="p">)</span>   <span class="c1">; =&gt; (b c)</span>
 
 <span class="p">(</span><span class="nv">digraph:predecessors</span> <span class="vg">*d*</span> <span class="ss">'bar</span><span class="p">)</span> <span class="c1">; =&gt; (foo bar)</span>
@@ -253,14 +253,14 @@
 
 <p><code>neighbors</code> returns all vertices that are a predecessor <em>or</em> successor of the
 given vertex:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nv">digraph:neighbors</span> <span class="vg">*d*</span> <span class="ss">'b</span><span class="p">)</span> <span class="c1">; =&gt; (a d)</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nv">digraph:neighbors</span> <span class="vg">*d*</span> <span class="ss">'b</span><span class="p">)</span> <span class="c1">; =&gt; (a d)</span>
 </pre></div>
 
 
 <h3 id="membership">Membership</h3>
 <p>To check whether a digraph contains a particular edge or vertex use
 <code>contains-vertex-p</code> and <code>contains-edge-p</code>:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nv">digraph:contains-vertex-p</span> <span class="vg">*d*</span> <span class="ss">'a</span><span class="p">)</span>      <span class="c1">; =&gt; t</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nv">digraph:contains-vertex-p</span> <span class="vg">*d*</span> <span class="ss">'a</span><span class="p">)</span>      <span class="c1">; =&gt; t</span>
 <span class="p">(</span><span class="nv">digraph:contains-vertex-p</span> <span class="vg">*d*</span> <span class="ss">'horses</span><span class="p">)</span> <span class="c1">; =&gt; nil</span>
 
 <span class="p">(</span><span class="nv">digraph:contains-edge-p</span> <span class="vg">*d*</span> <span class="ss">'a</span> <span class="ss">'b</span><span class="p">)</span>     <span class="c1">; =&gt; t</span>
@@ -271,14 +271,14 @@
 <h3 id="sizes-and-counts">Sizes and Counts</h3>
 <p>If you just want the <em>number</em> of vertices or edges in a digraph and don't need
 a list of them, use <code>count-vertices</code> and <code>count-edges</code>:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nv">digraph:count-vertices</span> <span class="vg">*d*</span><span class="p">)</span> <span class="c1">; =&gt; 6</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nv">digraph:count-vertices</span> <span class="vg">*d*</span><span class="p">)</span> <span class="c1">; =&gt; 6</span>
 <span class="p">(</span><span class="nv">digraph:count-edges</span> <span class="vg">*d*</span><span class="p">)</span>    <span class="c1">; =&gt; 5</span>
 </pre></div>
 
 
 <p>Similarly, if you want to know the number of edges into/out of/involving
 a vertex use <code>degree</code>, <code>degree-in</code>, and <code>degree-out</code>:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nv">digraph:predecessors</span> <span class="vg">*d*</span> <span class="ss">'a</span><span class="p">)</span> <span class="c1">; =&gt; ()</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nv">digraph:predecessors</span> <span class="vg">*d*</span> <span class="ss">'a</span><span class="p">)</span> <span class="c1">; =&gt; ()</span>
 <span class="p">(</span><span class="nv">digraph:degree-in</span>    <span class="vg">*d*</span> <span class="ss">'a</span><span class="p">)</span> <span class="c1">; = 0</span>
 
 <span class="p">(</span><span class="nv">digraph:successors</span> <span class="vg">*d*</span> <span class="ss">'bar</span><span class="p">)</span> <span class="c1">; =&gt; (bar)</span>
@@ -326,7 +326,7 @@
 sorted</a> list of the vertices — a list where each vertex comes after the ones
 it depends on.  cl-digraph can produce a list in this order with the
 <code>topological-sort</code> function:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
   <span class="p">(</span><span class="nv">digraph:make-digraph</span> <span class="ss">:initial-vertices</span> <span class="o">'</span><span class="p">(</span><span class="nv">a</span> <span class="nv">b</span> <span class="nv">c</span> <span class="nv">d</span><span class="p">)))</span>
 
 <span class="p">(</span><span class="nv">digraph:insert-edge</span> <span class="vg">*d*</span> <span class="ss">'a</span> <span class="ss">'b</span><span class="p">)</span> <span class="c1">; a depends on b</span>
@@ -344,7 +344,7 @@
 <h2 id="drawing">Drawing</h2>
 <p>If you have <a href="http://www.graphviz.org/">Graphviz</a> installed, you can draw digraph objects to images with
 the <a href="https://github.com/michaelw/cl-dot">cl-dot</a> library by loading the optional <code>cl-digraph.dot</code> system:</p>
-<div class="codehilite"><pre><span class="p">(</span><span class="nv">ql:quickload</span> <span class="ss">'cl-digraph.dot</span><span class="p">)</span>
+<div class="codehilite"><pre><span/><span class="p">(</span><span class="nv">ql:quickload</span> <span class="ss">'cl-digraph.dot</span><span class="p">)</span>
 
 <span class="p">(</span><span class="nb">defparameter</span> <span class="vg">*d*</span>
   <span class="p">(</span><span class="nv">digraph:make-digraph</span> <span class="ss">:initial-vertices</span> <span class="o">'</span><span class="p">(</span><span class="nv">a</span> <span class="nv">b</span> <span class="nv">c</span> <span class="nv">d</span> <span class="nv">foo</span> <span class="nv">bar</span><span class="p">)))</span>