Compared to earlier versions, YODL Version 2.00 is a complete rebuilt, and
offers many new features.

    itemization(
    it() Changed Yodl's name expansion. From `Yet Oneother Document Language'
          to: 
            center(bf(Your Own Document Language))
    it() The following commands are now obsolete and should/must be
        avoided. Alternatives are always offered.
        description(
        dit(ENDDEF) DECWSLEVEL should be used;
        dit(INCLUDELIT) NOEXPANDINCLUDE should be used;
        dit(NEWCOUNTER) DEFINECOUNTER should be used;
        dit(STARTDEF) INCWSLEVEL should be used;
        dit(UNDEFINEMACRO) DELETEMACRO should be used;
        dit(WRITEOUT) FPUTS should be used;
        )
    it() Several new commands were implemented:
        description(
        dit(ADDTOSYMBOL) adds text to a symbol's value;
        dit(DEFINESYMBOLVALUE) defines a symbol and its initial value;
        dit(DELETECOUNTER) opposite from NEWCOUNTER: removes an existing
            counter; 
        dit(IFBUILTIN) checks whether the argument is a builtin macro;
        dit(IFCOUNTER) checks whether the argument is a defined counter;
        dit(IFEQUAL) checks whether two numerical values are equal;
        dit(IFGREATER) checks whether the first numerical value exceeds the
            second numerical value;
        dit(IFMACRO) checks whether the argument is a defined macro;
        dit(IFSMALLER) checks whether the first numerical value is smaller
            than the second numerical value;
        dit(IFSYMBOL) checks whether the argument is a defined symbol;
        dit(PATHINCLUDELIT) includes literaly a file found in the
            XXincludepath path;
        dit(POPCOUNTER) pops a previously pushed countervalue;
        dit(POPMACRO) pops a previously pushed macrodefinition;
        dit(POPSYMBOL) pops a previously pushed symbolvalue;
        dit(PUSHCOUNTER) pushes the current value of a counter, initilaizes
            the active counter to 0;
        dit(PUSHCOUNTERVALUE) pushes the current value of a counter,
            initilaizes the active counter to any value;
        dit(PUSHMACRO) pushes the current definition of a macro, activates a
            local redefinition;
        dit(PUSHSYMBOL) pushes the current value of a symbol, initializing the
            active value to an empty string;
        dit(SETSYMBOL) assigns a new value to a symbol;
        dit(SYMBOLVALUE) returns the value of a symbol as text.
        )    
    it() Several macros were deprecated. Alternatives are suggested in the
      `man yodlmacros' manpage:
        itemization(
        it() tt(enddit());
        it() tt(endeit());
        it() tt(endit());
        it() tt(endmenu());
        it() tt(endtable());
        it() tt(enumerate(list));
        it() tt(itemize(list));
        it() tt(menu(list));
        it() tt(mit());
        it() tt(node(previous)(this)(next)(up));
        it() tt(startcenter());
        it() tt(startdit());
        it() tt(starteit());
        it() tt(startit());
        it() tt(startmenu());
        it() tt(starttable(nColumns)(LaTexAllignment));
        )
    it() tt(XXincludePath): Symbol installed by Yodl itself, but modifiable by
            the user: It holds the value of the current :-separated list of
            directories that are visited (sequentially) by the INCLUDEFILE
            command.  tt(XXincludePath) may contain tt($HOME), which will be
            replaced by the user's home directory if the `home' or `HOME'
            environment variable is defined. It may also contain
            t($STD_INCLUDE), which will be replaced by the compilation defined
            standard include path. The standard includepath may be overruled
            by either (in that order) the command line switch -I or the
            tt(YODL_INCLUDE_PATH) environment variable. By default, the
            current directory is added to the standard include path. When -I
            or tt(YODL_INCLUDE_PATH) is used, the current directory must be
            mentioned explicitly.  The individual directories need not be
            terminated by a /-character.  In the distributed .deb archive, the
            standard directory is defined as the current working directory and
            tt(/usr/share/yodl), in that order.
    it() Initial blank lines in the generated document are suppressed by
      default. 
    it() Command line argument -D also allows the assignment of an initial
        value to a symbol
    it() Command line argument -P is now -p, the previously defined -p
            argument is now -n (--max-nested-files), defining the maximum
            number of nested files yodl will process.
    it() Command line argument -r (--max-replacements) defines the maximum
            number of macro and/or subst replacements accepted between
            consecutive characters read from file(s).
    it() All assignents to counters (SETCOUNTER, ADDTOCOUNTER, etc.)  not only
            accept numerical arguments, but also counter names.
    it() Rewrote several awkwardly coded macros, using the new SYMBOL and
            COUNTER facilities
    it() Added experimental, very limited, xml support to help me generating
            xml for the horrible `webplatform' of the university of
            Groningen. But at least Yodl now offers xml support as well.
    it() The default extension for figures in the HTML and XML conversions is
            now tt(.jpg) rather than tt(.gif). The tt(sethtmlfigureext())
            macro can be used the change the default figure extension.
    it() There is no limit to the number of conversion-options that can be
            specified: macros like tt(htmlbodyopt()) and tt(latexoption()) can
            be specified as often as required resulting in one concatenated
            specification.
    it() Upgraded most of the documentation.
    it() Separated yodl-macro files for the various formats. While this might
            not strictly be necessary, I feel this is better than using big
            fat generic macro definition files which are bloated with
            `whenhtml(), whentxt()' macros. I introduced a generic frame,
            mentioning the macros that must at least be defined by the
            individual formats.
    it() Internally, the software was VASTLY reorganized. I feel that
            generally programs written in bf(C) don't benefit from approaches
            that have become quite natural for C++ programmers. I had the
            choice to either rewrite Yodl to a C++ program or to reprogram
            Yodl in the line of C++, but still using C.  I opted for the
            latter. So, now the src section contains `object-like'
            function families, like `countermap_...()' handling all
            counte-related operations, `textvector_...()', handling all
            text-vector like operations, and other.  Other functions reveived
            minor modifications. E.g., xrealloc() now requires you to specify
            both the number of elements and the size of the elements. By doing
            so, it is sheer impossible to overlook the fact that you have to
            specify the size of the elements, thus preventing the allocation
            of chars when, e.g., ints are required.
    it() An old inconvenience was removed: line number counting is now using
            natural numbers, starting at 1, rather than line indices, starting
            at 0.
    it() My old tt(@icce.rug.nl) e-mail address has been changed into my
            current e-mail address:
                center("Frank B. Brokken" <f.b.brokken@rug.nl>)
    it() The post processing is now performed by the program `yodlpost'. This
            program again used Design Patterns originally developed for object
            oriented contexts, resulting in an program that is easy to
            maintain. modify and expand.
    it() The post-processor doesn't use tt(.YODLTAGSTART.) and tt(.YODTAGEND.)
            anymore.
    it() The basic conversion formats now supported are html, latex, man, and
            text. Xml support is experimental, other formats are no longer
            supported, mainly because my personal unfamiliarity with the format
            (texinfo), or because the format appears to be somewhat obsolete
            (sgml).
    it() Added a Yodl document type `letter', indended to be used with the
            `brief.cls' LaTeX documentclass
    it() Yodl 2.00 converts documents em(much) faster than earlier versions.
    )
