Groups | Search | Server Info | Login | Register
Groups > comp.programming.literate > #98
| Path | csiph.com!weretis.net!feeder9.news.weretis.net!news.quux.org!eternal-september.org!feeder2.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail |
|---|---|
| From | Wolfgang Agnes <wagnes@jemoni.to> |
| Newsgroups | comp.programming.literate |
| Subject | Re: "hello, world" Literate Programming example in Noweb |
| Date | Fri, 1 Nov 2024 23:11:48 CST |
| Organization | A noiseless patient Spider |
| Lines | 68 |
| Approved | comp.programming.literate Moderators <cpl-mods@newjersey.metaed.com> |
| Message-ID | <87froazhac.fsf@jemoni.to> (permalink) |
| References | <slrnvi7bag.hge.metaed@newjersey.metaed.com> <87ttcqzxy9.fsf@jemoni.to> <slrnviahks.hge.metaed@newjersey.metaed.com> |
| MIME-Version | 1.0 |
| Content-Type | text/plain |
| Injection-Date | Sat, 02 Nov 2024 00:11:51 +0100 (CET) |
| Injection-Info | dont-email.me; posting-host="d11f8fec12cda9e4e4378705441680ae"; logging-data="3629143"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/5JIcYM6Ghw4rO2gHeAe15" |
| Cancel-Lock | sha1:0/hLwhPmKaHUUBYYxt/Xr9knh6M= sha1:sw1Xmt0Pzu8YHWN3fO8tYy7yikU= sha1:sw1Xmt0Pzu8YHWN3fO8tYy7yikU= |
| Delivered-To | comp-programming-literate@moderators.isc.org |
| X-Spam-Checker-Version | SpamAssassin 3.4.6 (2021-04-09) on smtp.eternal-september.org |
| X-Spam-Status | No, score=-99.0 required=5.0 tests=DKIM_ADSP_NXDOMAIN, HEADER_FROM_DIFFERENT_DOMAINS,SPF_HELO_NONE,SPF_PASS, USER_IN_WELCOMELIST,USER_IN_WHITELIST autolearn=no autolearn_force=no version=3.4.6 |
| X-cpl-info-2 | contact mods cpl-mods@newjersey.metaed.com |
| X-Original-To | cpl@newjersey.metaed.com |
| Authentication-Results | name/E97C65F701; dmarc=none (p=none dis=none) header.from=jemoni.to |
| X-Auth-Sender | U2FsdGVkX1+jAC93o3y/2wCu0yVMw4TMqB+UH4ONNPY5x1PIOvOcu81wrmGSaIGF81bL4swmFKTBj4s8TxqlvLMvrgn0epWW4DmKH7D0gs0= |
| X-cpl-info-1 | submissions to cpl@newjersey.metaed.com |
| Xref | csiph.com comp.programming.literate:98 |
Show key headers only | View raw
Edward McGuire <metaed@metaed.com> writes: > On 2024-11-01, Wolfgang Agnes <wagnes@jemoni.to> wrote: >> Welcome to the literate programming world. > > Thank you, especially for the really thoughtful response. This kind of > constructive reply is exactly what I wanted. You're so welcome. Glad I could be of some help. >> perhaps the first chunk should be /hello main body/ because that is precisely >> what we expect from a hello-world. > > I agree. Part of what's fun about this design process is, instead of starting > literally at the top and sectioning down, or at the bottom and chunking up, you > can start at the middle, then both section down and chunk up. Knuth discovered > this was true for him also, and mentions it in the "Literate Programming" paper. Nice. That's also why I like it so much. I had never noticed how the compiler order is such a prison. Knuth liberated us from that. It makes a lot of difference. It brought a pretty good deal of the joy of programming back to me. (Lisp brought another half of that joy.) > The tutorial should be reordered to demonstrate that. Okay. >> by calling your chunks as holons, you're eclipsing the name ``chunk'' which >> seems to be the [standard] one. Something to think about. >> [...] >> I see you explain the NOWEB terminology. I wonder if Knuth was the one >> who started with the term /chunk/ as well. If so, then I'd advise >> against /holon/. > > My choice of _holon_ reflects my intention that the tutorial be, or become, less > about a particular tool, and more about what literate programming _is_, while > still showing a working example. Interesting. I agree with that. I should've also said that I really enjoyed the term, though if everyone *were* using a single one---say, ``chunk''---, I'd stick to it, but you showed that's not the case. > Knuth uses neither _chunk_ nor _holon_. In the "Literate Programming" paper, he > acknowledges de Marneffe's Holon Programming Language as the primary influence > on the design of WEB, but does not follow de Marneffe's terminology. In the WEB > manual he uses _module_, and in CWEB he uses _section_. Ramsey (noweb) uses > _chunk_. Briggs (nuweb) uses _scrap_ and _macro_. In short, there is no > agreed-on term. Thanks very much for all the references! > The term _holon_ captures good design better than the others. It describes a > relatively independent "organic" or "granular" unit of code, whose form and > purpose is easily graspable by the reader, and whose boundaries easily allow for > sectioning down and chunking up, validation, testing, refactoring, etc. And > that's what a good literate programmer aims for. Totally agree. Maybe we all should use ``holon'' from now on. >> More often than not, users don't have NOWEB installed, so they wouldn't >> be able to do anything with your program but read it. > > I need to add an appendix, that shows how a person could easily get Noweb > running and actually execute the tutorial code. That's a nice idea. NOWEB is such a stable software, your tutorial would likely last a good deal of time.
Back to comp.programming.literate | Previous — Previous in thread | Find similar
"hello, world" Literate Programming example in Noweb Edward McGuire <metaed@metaed.com> - 2024-10-31 16:17 -0600
Re: "hello, world" Literate Programming example in Noweb Wolfgang Agnes <wagnes@jemoni.to> - 2024-11-01 17:28 -0600
Re: "hello, world" Literate Programming example in Noweb Edward McGuire <metaed@metaed.com> - 2024-11-01 21:23 -0600
Re: "hello, world" Literate Programming example in Noweb Wolfgang Agnes <wagnes@jemoni.to> - 2024-11-01 23:11 -0600
csiph-web