From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail From: Simon Wright Newsgroups: comp.lang.ada Subject: Re: Ada Successor Language Date: Fri, 15 Jun 2018 08:15:54 +0100 Organization: A noiseless patient Spider Message-ID: References: <5e86db65-84b9-4b5b-9aea-427a658b5ae7@googlegroups.com> <878t7u1cfm.fsf@nightsong.com> <8a65f8ff-4a75-43f2-884c-6872780f7ea8@googlegroups.com> <771e8e35-b71a-499d-a0fe-bb0df1de22ab@googlegroups.com> <92741619.550509671.540055.laguest-archeia.com@nntp.aioe.org> <81e22064-bb0e-4e0b-982a-c17a2cad5977@googlegroups.com> <1b03e4ff-daf1-4c13-84ef-13aec1ba96e9@googlegroups.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: reader02.eternal-september.org; posting-host="a33c385bd14789a9293700082b78f75c"; logging-data="3289"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+Esc0LUtI0Rcxy0jowaAtZ7vHj9nsXS4I=" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.3 (darwin) Cancel-Lock: sha1:QEQW07pcsGDrtqidSfecRc7hg8U= sha1:r+u9B5J7ua69E86GXZLFtQsYsBA= Xref: reader02.eternal-september.org comp.lang.ada:53115 Date: 2018-06-15T08:15:54+01:00 List-Id: "Randy Brukardt" writes: > While I agree with your basic premise, I'm dubious that there is a > better format than unstructured text for programs. There were many > such alternatives explored in the 1980's, and they all had the > property of making editing more complex. (I tried one for a while when > a vendor wanted us to consider bundling it; it was a very nice job for > the time, but the attempt to keep code parsable at all times made it > much harder to do program editing - one needed multiple steps to do > what was easy to do in one step and a bit of text editing. For > instance, consider cutting out an elsif branch and turning it into a > stand-alone if statement -- a restucturing I tend to do fairly > frequently.) The R1000 had three phases for a unit: the first, whose name I forget, was essentially free text; the second was 'semanticised', i.e. parsed and checked for legality; the third, again I forget the name, was code-generated. Once a unit was semanticised, the free text form was forgotten and would be regenerated if you needed to edit the unit. Annoying if you really didn't like the code format enforced by the system, but it didn't take long to let go of that particular form of artistic hubris!