From f5ea5b6765128e4a4096a50e627467f264dbe9ce Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Mon, 5 Apr 2004 13:21:36 +0000 Subject: [PATCH] Minor fixes. --- doc/mad-manual.xml | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/doc/mad-manual.xml b/doc/mad-manual.xml index 5564736..b6a83f6 100644 --- a/doc/mad-manual.xml +++ b/doc/mad-manual.xml @@ -114,17 +114,18 @@ trivium by comparison. The expository style of the manual conveys as clearly as do the language features that at this date the infant discipline of computer -science had yet to separate itself from applied mathematics. All -the impedimenta of mathematical notation are present not just in the +science had yet to separate itself from applied mathematics. All the +impedimenta of mathematical notation are present not just in the formulas, but in the language syntax descriptions where script letters are used as metavariables. The whole is written in the rather stilted -over-formal prose one typically finds in mathematical papers. +over-formal prose one finds in the ordinary run of mathematical +papers. Certain phrasings in the manual suggest that the authors thought of flowcharts as the primary notation for programs, and considered MAD code a sort of hand-compiled derivative of it. This made sense at the time, though it would have made much more sense if the authors had -actually settled on a consistent notation (this manual uses at least +actually settled on a consistent notation (the MAD manual uses at least three conflicting styles). Programming languages were clumsy and primitive, resources were scarce, and the typical complexity of programs was very low. By five years later (roughly three or four @@ -144,16 +145,16 @@ function-valued variables! Also, MAD took care of details of running a job in ways that few other languages of the time could do. MAD was what came to be called a -"load-and-go" compiler; unlike other languages of the period in which -jobs had to be launched by the operator after the card deck had been -loaded, the MAD system would ship either a diagnostic listing or -program output to the line printer immediately after the deck -compiled. This fast turnaround was essential for a teaching +load-and-go compiler; unlike other languages of the +period in which jobs had to be launched by the operator after the card +deck had been loaded, the MAD system would ship either a diagnostic +listing or program output to the line printer immediately after the +deck compiled. This fast turnaround was essential for a teaching environment. MAD also featured good diagnostics to help students find and correct errors. MAD's combination of a compiler with the simple supervisor program that enabled load-and-go operation was considered quite cutting-edge at the time and inspired a paper in the very first -issue of ACM Computing Surverys (Supervisory and Monitor +issue of ACM Computing Surveys (Supervisory and Monitor System, R.F. Rosin, March 1969). On the other hand, there are some features of MAD which make one @@ -267,7 +268,7 @@ is not enforced. Character READ FORMATs into arrays cause their equivalents in the generated C code to be declared with a base char type as would -be usual in C. Perfect fidelity to the MAD code would have required +be usual in C. Perfect fidelity to the MAD behavior would have required the data to be unpacked into int or double arrays, but that code would have been far more complicated to generate and hard to read. -- 2.43.0