ITS Muddle.
[pdp10-muddle.git] / MUDDLE / stctst.2
diff --git a/MUDDLE/stctst.2 b/MUDDLE/stctst.2
new file mode 100644 (file)
index 0000000..5b39cb9
--- /dev/null
@@ -0,0 +1,43 @@
+<SETG PATH 
+ <FUNCTION TL ("STACK" START FINISH)
+   <PROG ("STACK" (VAL <FAILPOINT () <PATH1 .START .FINISH ()>
+                    ("STACK")
+                    <EXIT .TL <>>   >))
+    <FINALIZE .TL>
+    <RETURN .VAL>>>>\e
+
+
+<SETG PATH1
+ <FUNCTION  ("STACK" START FINISH AVOID)
+   <COND (<==? .START .FINISH>
+          (.FINISH))
+         (<MEMBER .START .AVOID>
+          <FAIL>)
+         (T (.START 
+             !<PATH1
+               <FAILPOINT FP ("STACK" N (NODES <GET .START CONNECTED>))
+                        <FAIL> ("STACK")
+                        <COND (<EMPTY? .NODES> <FAIL>)
+                              (<SET N <1 .NODES>>
+                               <SET NODES <REST .NODES>>
+                               <RESTORE .FP .N>)>   >
+               .FINISH
+               (.START !.AVOID)>))>>   >\e
+
+
+<PUT ALPHA CONNECTED (B D K)>\e
+<PUT B CONNECTED (ALPHA I C)>\e\r\r
+<PUT I CONNECTED (B H J)>\e
+<PUT H CONNECTED (I)>\e
+<PUT J CONNECTED (I)>\e
+<PUT C CONNECTED (B G D)>\e
+<PUT G CONNECTED (C)>\e
+<PUT D CONNECTED (ALPHA C F)>\e
+\r<PUT F CONNECTED (D)>\e
+<PUT K CONNECTED (ALPHA M L)>\e
+<PUT M CONNECTED (K L N O)>\e
+<PUT L CONNECTED (K M)>\e
+<PUT N CONNECTED (M)>\e
+<PUT O CONNECTED (M P OMEGA)>\e
+<PUT P CONNECTED (O)>\e
+<PUT OMEGA CONNECTED (O)>\e\f\ 3\f
\ No newline at end of file