Our implementation will be open source.
Ascential open source is a "dual use" kind of license.
Basically means Ascential can do what it wants with the software including offer
commercial terms, for everyone else it's like the GPL with the additional
requirement that any mods you make to the software are relicensed back to
Ascential. There are other licenses like this e.g., mySql and cygwin, I'm
told there are others as well.
This particular implementation is not intended to be
production quality so I'm not sure the commercial terms matter in the above
license. This implementation is being designed from the ground up to be simple,
clear, and easily modified so that as we iron out the exact semantics of DFDL we
can do so with a real implementation. These goals are in tension with
performance, which we're punting on entirely. So, for example, almost all the
Java object classes in this implementation are immutable objects. This makes the
code dead-simple, but implies lots of object allocation and garbage collection
during execution. We expect several objects to be allocated and discarded for
every bit of input that is touched when reading data, for example.
The GGF doesn't do "reference implementations", so I'm
calling this thing an "Informational Implementation", but the spirit is the
same. Our DFDL spec documents can be far clearer if we have an implementation
that is easy and quick to modify, and one we can run real tests against readily
as we debate the fine points.Our goal at Ascential is for this implementation to
exactly match the standard.
Other minor details: We're writing it in pure Java in the
latest Java dialect, Java 1.5, making heavy use of generic types to simplify the
code.
...mikeb
People have mentioned various
implementations of DFDL on this mailing list. Will any of them be open
source?
Susan Malaika