From mboxrd@z Thu Jan 1 00:00:00 1970 From: Achim Gratz Subject: Re: Literate Programming - Continue a Source Block? Date: Wed, 15 Jun 2011 23:19:06 +0200 Message-ID: <87pqmeaj3p.fsf@Rainer.invalid> References: <87pqmokh6d.fsf@fester.com> <80k4cw22uf.fsf@somewhere.org> <87fwnkjqoh.fsf@fester.com> <87mxhsnmcf.fsf@gmail.com> <877h8wj9za.fsf@fester.com> <877h8tv6yh.fsf@gmail.com> <87oc25mqqq.fsf@Rainer.invalid> <8739jhv4ma.fsf@gmail.com> <87mxhn8n7i.fsf@Rainer.invalid> <87tybtidzy.fsf@gmail.com> <87ei2wgmvw.fsf@Rainer.invalid> <877h8nuhr3.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from eggs.gnu.org ([140.186.70.92]:55240) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QWxUj-0007wM-Dj for emacs-orgmode@gnu.org; Wed, 15 Jun 2011 17:19:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1QWxUh-0008SW-Ks for emacs-orgmode@gnu.org; Wed, 15 Jun 2011 17:19:25 -0400 Received: from lo.gmane.org ([80.91.229.12]:50758) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1QWxUh-0008SG-2c for emacs-orgmode@gnu.org; Wed, 15 Jun 2011 17:19:23 -0400 Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1QWxUe-0005UG-2s for emacs-orgmode@gnu.org; Wed, 15 Jun 2011 23:19:20 +0200 Received: from p57aad203.dip.t-dialin.net ([87.170.210.3]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 15 Jun 2011 23:19:20 +0200 Received: from Stromeko by p57aad203.dip.t-dialin.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Wed, 15 Jun 2011 23:19:20 +0200 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org Eric Schulte writes: > Does anyone on this list know the noweb system well enough to specify > its behavior in this regard, and to describe what functional changes > would be required to bring Babel into line with noweb behavior? Far from knowing it well, but the basics are, well basic: Documentation text is started via '@', code chunks are defined via '<>=' and a given chunk can be extended by '<>=' with the same name again, which allows to intermingle documentation and definition in a linear fashion. Code chunk references are just '<>' without the equal sign and can be used non-linearly. For comparison with Babel the noweb Hackers Guide is probably a good source since it describes the pipeline representation which is used by the tools (and should maybe be emulated by the Babel backend). http://www.cs.tufts.edu/~nr/noweb/guide.html Notably, noweb assumes a tree (or forest) of code chunks of which the root nodes are to be tangled. Babel probably needs to take care of another two layers of complexity since it goes at least one step further than LP: after the equivalent of tangling all root chunks (producing the runnable programs) it needs to produce and integrate back into the documentation their results by running them and optionally keeping track of session information if they are not independent. That still assumes that the final documentation can be arrived at after running all programs and collecting their results, but the real fun starts when one of those programs produces another program that also needs to be run. :-) Regards, Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Waldorf MIDI Implementation & additional documentation: http://Synth.Stromeko.net/Downloads.html#WaldorfDocs