XAML vs XUL with a bit of Entity thrown in 2005-04-14


I haven't bothered following Avalon and XAML a lot, so mezzoblue: Avalon/XAML First Look was a very interesting quick overview.

My impression is that this isn't very interesting.

XUL show significant more promise in the pure UI space for the reasons that 1) it's cross platform, 2) it's well integrated with the DOM, 3) Firefox forms a reasonably mature platform to build applications on top of.

I realise from the examples that Avalon/XAML has a somewhat wider scope - for instance there is no 3D support in current XUL implementations, and no SVG support in the standard builds. However at least SVG support for Firefox is now right around the corner.

As for the projecting stuff onto spheres, that sounds very much like GGI - see the cube example for instance. Old news. I liked GGI a lot but the features were never enough to give it much traction. Of never projects, it reminds me of Luminocity - an experimental X window manager that supports bizarre stuff like windows that wobble when you move them as a demonstration of new X server functionality.

However, back to XML descriptions of user interfaces. There is one project that had immense potential, but that seems to have died...

Entity (I've not been able to find a proper webpage for it - just the Debian package info pages). I really wish they'd kept developing it. Entity let you build a full app by writing an XML file describing the UI.

You can define your own tags, and it had built in support for javascript, Perl, Python and C scripting. The latter was handled by executing gcc on the fly and generating a DLL that was then loaded with dlopen() (it was cached, though...) - a bit impractical, but I loved the idea.

The greatest demo application was an app that let you modify the in memory representation of the XML document, including the in memory representation of the editor itself, and see the changes in UI and behaviour immediately.

Entity showed promise because it was flexible, small and extensible. Please someone pick it up. Please!


blog comments powered by Disqus