|
|
last edited 17 years ago by page |
1 2 | ||
Editor: page
Time: 2007/11/13 00:41:22 GMT-8 |
||
Note: transferred from axiom-developer.org |
changed: - - LaTeX (not plain TeX) is the preferred form, ie, use '\begin{blah} ... \end{blah}' - LaTeX (not plain TeX) is the preferred form, ie, use '!\begin{blah} ... \end{blah}'
This page describes how pamphlets should look like.
There are already some connected pages like PamphletFiles?, PamphletExample?, LiterateProgramming, but there is not yet a clear guide of how to write pamphlets. Even worse, it is not completely clear how the final Axiom sources should look like.
This page is an attempt to start a discussion that should end in a guide of how pamphlet files should look like, how formal they should be, how much should be inside the pamphlet, and how much could could be just references to other sources like books, articles, online articles, etc.
See also the email thread with subject Pamphlet style (was: Literated VMLISP.LISP.PAMPHLET) .
Everyone is invited to add his/her vision for a pamphlet style or his/her experience with writing literate programs. Just add your name and your thoughts, visions, experiences, links etc. in connection with literate programming.
\begin{blah} ... \end{blah}
to tag bigger regions of code.
That makes transformation into other outputformats (especially html) easier.\usepackage{hyperref}
to produce hyperlinked documents. You might want to consider
rhxterm.sty since it
allows \defineterm{some concept} and \useterm{some concept} and produces hyperlinks and
index entries without much typing.\url{put url here}
to make an active link.The algorithm approximately reads:
1. Form the rational function r(n)=t(n+1)/t(n). 2. Write r(n)=a(n)/b(n) * c(n+1)/c(n) where a,b,c satisfy (5.2.4) 3. Find a nonzero polynomial solution x(n) of (5.2.6) or return "failed" 4. Return b(n-1)*x(n)/c(n) * t(n).
Then you see Section 5.3 "The full algorithm: Step 2".
So as a pamphlet that should become:
<<Gosper Algorithm>>= <<Form the rational function r(n)=t(n+1)/t(n).>> <<Write r(n)=a(n)/b(n) * c(n+1)/c(n) where a,b,c satisfy (5.2.4)>> <<Find a nonzero polynomial solution x(n) of (5.2.6) or return "failed">> <<Return b(n-1)*x(n)/c(n) * t(n).>> @
As in "A=B" the steps (and the corresponding code) are explained in an extra chapter.