I am thinking about writing an online book called "Learning how to program
in perl" which will teach those who don't know programming how to program
in perl. 

While the final book will be in HTML, I'd like to have the following
requirements for the format I'll use to write it:

1. The source for every chapter should be in a separate file. (to fasten
the time it takes to render it onto HTML for checking).

2. There should be logical styles like "<NOTE> ... </NOTE>" "<CODE> ...
</CODE>". HTML, for example, is not good enough for being the source for
this document because if I would like to change the format of all the
notes, I'll have to change the HTML code in every place there is one.

3. Numbering of Chapters, Sections and sub-sections; notes, assignments,
exercises, etc. Also, the ability to give an ID to a closure and then
reference it from the outside based on its ID.

4. The ability to place text in several files from one source file. For
instance if I have the following meta-code:
<exercise>
<text>
Write a program that prints all the numbers between 1 and 100, that do are
not equally divided by 3.
</text>
<solution>
<pre>
for($a=1;$a<=100;$a++)
{
        if ($a % 3 != 0)
        {
                print $a, "\n";
        }
}
</pre>
</solution>
</exercise>

Then I'd like what between the "<text> ... </text>" tags to appear in the
text of the chapter, while the solution in a separate solutions file.
(with a link to it from the text).


The closest thing I now of for this kind of thing is SGML, but I don't
know if it is flexible enough for my needs. Do you know if there's a DTD
available for such purposes. I don't know how to write SGML DTD's on my
own.

Another option I can think about is writing my own generator in perl while
using XML::Parser. The problem is that it is quite a lot of coding.

Do you know if there's any solution that fits the needs I described above?

        Shlomi Fish


----------------------------------------------------------------------
Shlomi Fish        [EMAIL PROTECTED] 
Home Page:         http://t2.technion.ac.il/~shlomif/
Home E-mail:       [EMAIL PROTECTED]

The prefix "God Said" has the extraordinary logical property of 
converting any statement that follows it into a true one.


=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]

Reply via email to