-----Original Message-----
From: Charlie McDowell [mailto:charlie@...]
Sent: 26 November 2002 21:08
To: xml-litprog-l@yahoogroups.com
Subject: [xml-litprog-l] Leo, Elucidator etc.
>I am familiar with both Leo and Elucidative Programming (although not the
>Elucidator project).
>They each drift a little bit further from my interpretation of Knuth's LP
>concept than I wanted to go.
>With Leo, the outline is nice (and in fact the tool I'm developing will
>include a Leo like outline view),
>but it just isn't full on LP. I didn't sense that it had a user base that
>made it the right choice as a
>starting point.
I think you may be wrong about Leo's user base is quite large. It's
certainly a very active development project with several thousand messages
on the bulletin board.
>The outline view is actually a rather easy view to generate. The folded
>view as I'm conceiving
>it is quite different (and was/is the most intellectually
>challenging/interesting part of what I'm doing).
I think that the outline is more of a model than a view in Leo. You are
actually creating nodes on a tree when you use Leo. Each node consists of
documentation, or code, or documentation and code. The node headings are
equivalent to Knuth's macros. The tree view does strain Knuth's original
concept a little as I think he was describing a directed graph rather than a
tree: features that I'd like to see in Leo, like hyperlinks from use to
definition, or in-line expansion are missing a la a folding editor. But as
an interactive tool for doing LP it's the best I've seen. As I said before,
the tangling (and untangling) facility is pretty much faultless!
>Likewise, Elucidative programming separates the code view and the
>documentation view, but links them together so
>you can easily move back and forth. To me this is again a big move away
>from Knuth's concept where the code
>and documentation are intertwined.
You are correct, but I could see no real reason why the tools supporting
elucidation needed to make this separation apart from a need to have
repetition with more or less detail.
>I'm very much concerned about creating just "yet another" LP tool. I'm
>trying to make sure I learn from what others
>have done, but I didn't see either of these as having important ingredients
>that I wanted to build on (but I could easily
>be wrong).
>The folding idea I am implementing it not new, even in the LP literature
>(although I wasn't aware of this comment
>when I conceived off the idea). It was proposed in 1986. Thimbleby observed
>(Thimbleby, H., Experiences of literate programming using cweb (a variant
>of Knuth's WEB). Computer Journal, 1986. 29(3): p. 201-11)
>that one "of the disadvantages of literate programming ... is that the
>programmer cannot view the code of macro bodies in situ at the point of
>invocation." He goes on to propose "an interactive version" in which the
>programmer "would press a button and an invocation would unfold into a
>(name, body) window in position."
I liked this feature of your mini example. I've used folding editors myself
and have seen other proposals for an LP-like tool that use folding as a key
feature.
>I completely agree that it would be great to agree on a DTD. I'd be quite
>happy to adopt anything reasonable.
>That is a simple minor change to the input parsing and save operations.
Can I suggest that you start from xmLP 1.0! It works well provided that you
don't mind using XHTML in your documentation "chunks".
>Charlie McDowell, Professor (831) 459-4772 (w)
>Computer Science Department (831) 427-2076 (h)
>University of California (831) 459-4829 (fax)
>School of Engineering http://www.cse.ucsc.edu/~charlie
>1156 High Street
>Santa Cruz, CA 95064-1077
Yahoo! Groups Sponsor
ADVERTISEMENT
====
Unsubscribe: xml-litprog-l-unsubscribe@yahoogroups.com
Post message: xml-litprog-l@yahoogroups.com
http://groups.yahoo.com/group/xml-litprog-l/
Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
[Chris J.]
Dr Chris P. Jobling [C.P.Jobling@...]
School of Engineering
University of Wales Swansea, Singleton park, Swansea SA2 8PP, UK.
Tel: +44 1792 295580; Fax: +44 1792 295676
WWW: www.engineering.swan.ac.uk