<!ENTITY simpsmain SYSTEM "../madhouse/simpsmain.mad">
<!ENTITY findroot SYSTEM "../madhouse/findroot.mad">
<!ENTITY transfunc SYSTEM "../madhouse/transfunc.mad">
+<!ENTITY matrixmult SYSTEM "../madhouse/matrixmult.mad">
<!ENTITY scope1 SYSTEM "scope1.xml">
<!ENTITY scope2 SYSTEM "scope2.xml">
<!ENTITY scope3 SYSTEM "scope3.xml">
<para>Label arrays, array-mode variables, and the associated
computed-transfer statement are not implemented (mainly because the
manual did not include programs with which they could be tested).
-Neither are multiple ENTRY points, or TAPE and DRUM statements.</para>
+Neither are multiple ENTRY points, EQUIVALENCE, TAPE, or DRUM
+statements.</para>
<para>Only the no-argument case of ERROR RETURN is supported. The
language describing the more general case of this feature is deeply
<para><emphasis>Analysis:</emphasis> If we write A' =
(b<subscript>ij</subscript>) then b<subscript>ij</subscript> =
-a<subscript>ji</subscript>. We challe inter­change
+a<subscript>ji</subscript>. We shall inter­change
symmetrically-placed pairs of elements, leaving untouched elements on
the main diagonal. The program will be in the form of an external
function.</para>
+<note><para>The Retrocomputing Museum implementation cannot yet
+compile this example. The problem is the EQUIVALENCE declaration;
+there is no general way to implement this in generated C.</para></note>
+
<para><emphasis>Flow diagram:</emphasis></para>
<note><para>There are two minor errors in this flow diagram,
× p with n · p ≤ 1500, and C has dimensions m ×
p with m · p ≤ 1500.</para>
-<para><emphasis>Analysus:</emphasis> An element c<subscript>ij</subscript>
+<para><emphasis>Analysis:</emphasis> An element c<subscript>ij</subscript>
of C is computed by the formula</para>
<mediaobject>
</imageobject>
</mediaobject>
-<!-- pagebreak -->
+<!-- pagebreak; -->
+
+<!-- this heading is omitted in the original -->
+<para><emphasis>The Program:</emphasis></para>
+<programlisting>
+&matrixmult;
+<!-- pagebreak; -->
+* DATA
+ 2 3 3
+ 1. 2. 3. 4. 5. 6.
+ 7. 8. 9. 10. 11. 12.
+ 13. 14. 15.
+</programlisting>
</sect2>
+<!-- pagebreak; -->
</sect1>
</chapter>
</book>
-
<!--
Local Variables:
compile-command: "make mad-manual.html"
End:
-->
-