- From: Paul Derbyshire <derbyshire@globalserve.net>
- Date: Sat, 20 May 2000 15:52:57 -0400
- To: www-amaya@w3.org
It is my humble opinion that Amaya should be reimplemented from the ground
up in Java. The reasons for this are many-fold:
1. With all due respect, the current Amaya code is a mess, full of spaghetti
code and dubious casts and the like. Unsurprisingly, Amaya is notoriously
unstable, particularly on Windows systems; the Linux version is
comparatively stable and reliable, but by all reports and from my own
experience *extremely* quirky. Most of the traffic on this mailing list is
concerned with problems: this hung, that won't compile, this violates the
DTD, that doesn't work... These problems stem from the slapdash
jerry-rigged
construction, which was admirable in the youth of the W3C, Web, and Amaya
project, and which is now obsolete. Only a complete reimplementation will
clean it up and remove the mysterious unintended dependencies, quirks, and
bugs. The sooner the reimlementation occurs, the better.
2. Java is now mature enough to be used for such a large task. C++ also is.
3. However, if you use Java you get most of what you need for free, without
a line of code having to be written, as well as instant cross-platform
portability! JAXP (http://java.sun.com/xml/) provides all needed XML
features; Project Swing includes HTML display/edit GUI components and
document objects, and these stick to the DTD like glue, they are not
tag soup implementations; and Project Swing also includes a JTree GUI
component that is perfect for displaying Amaya's important Structure View.
The JAXP documentation even explains in some detail how to make a JTree
display the structure of an XML document, exactly as Amaya would in its
MathML structure view windows. Of course, with JAXP and XHTML, this can
give you the regular structure view too. And it will be able to deal with
*any* XML schema given just two things -- a DTD for the schema, and some
translation from the schema element objects to visual representations and
editing commands in the interface. It's nearly all been done for you! I
estimate you could totally reimplement Amaya into a stable Java form *with
more XML features* in a matter of *days*, then release it *for every
platform under the Sun* (Sun Microsystems that is) for *July 1*.
Comments/criticisms/remarks anyone? (Flames will be forwarded directly to
/dev/null; before leveling a criticism be sure to investigate Java,
especially JAXP and Project Swing, fully, because this stuff can do damn
near anything.)
--
.*. "Clouds are not spheres, mountains are not cones, coastlines are not
-() < circles, and bark is not smooth, nor does lightning travel in a
`*' straight line." -------------------------------------------------
-- B. Mandelbrot |http://surf.to/pgd.net derbyshire@globalserve.net
_____________________ ____|________ Paul Derbyshire
Programmer & Humanist|ICQ: 10423848|
Received on Saturday, 20 May 2000 15:51:17 UTC