<document>
    <properties>
        <author email="adammurdoch@apache.org">Adam Murdoch</author>
        <title>Differences to Ant1</title>
    </properties>

    <body>
        <section name="Differences to Ant 1.x">

            <p>Some of the differences between Ant 1.x and Myrmidon:</p>
            <ul>
                <li>
                Groups of tasks can be assembled into self-describing
                    <i>antlib</i> task libraries.  This makes it very easy to
                distribute and install tasks and data-types.
                </li>
                <li> A project can import other projects, and reference their targets. </li>
                <li>Properties and data type references now share the same namespace.</li>
                <li>
                Changes to task and data-type API:
                    <ul>
                        <li>An interface based API, through which a task interacts with the
                        task engine, and the services it provides.</li>
                        <li>A well-defined object lifecycle.</li>
                        <li>Polymorphic types are supported when objects are configured.</li>
                        <li>Reference handling is handled automatically when objects are configured.</li>
                        <li>Aspects can be used to decorate tasks, to add facilities like logging,
                        error handling, or user preferences.</li>
                    </ul>
                </li>
                <li>A set of well-defined services and APIs have been introduced, to allow
                tasks to do their work without depending on other tasks:
                    <ul>
                        <li>Execute external commands.</li>
                        <li>Execute other tasks.</li>
                        <li>Manage ClassLoaders and Class-paths.</li>
                        <li>Virtual file system (in progress).</li>
                        <li>Execute Java applications (in progress).</li>
                        <li>...</li>
                    </ul>
                </li>
            </ul>
            <p>There are plenty more features planned.  You can read about them
                <a href="todo.html">here</a>.
            </p>
        </section>
    </body>

</document>
