Would an "easier" (yet still monumental) starting point be to tackle the DOM implementation independent of a JS engine?
It seems like attempting to create any kind of a JavaScript framework implementation would be pretty useless (and horribly incomplete) without the DOM being present first. An internal DOM representation seems to be pretty useless by itself, but at least it's a foundation for a useful JS implementation later. To me, the key challenge appears to be coming up with a DOM framework that can manage its state in the same way that a browser does while providing an interface that can later be wired up with a JS engine and, perhaps, some kind of a UI simulation layer (to simulate events that would normally occur in a browser - onClick, onBlur, etc.). I don't think we'd want to tie the DOM directly to the JS engine anyway, so having an abstracted interface is actually a benefit. This seems like a great open source project - it's way too much to handle for most individual developers, but I think could be tackled with a moderately organized team of folks with a good design laid out in advance. Chris On 11/22/06, John J Lee <[EMAIL PROTECTED]> wrote:
On Wed, 22 Nov 2006, Stefan Seifert wrote: [...] > I too thought about that. Maybe using the JavaScript or > JavaScript::Spidermonkey module and XML::DOM. I will certainly > experiment around with them, as we need it at work. Doesn't seem to be Sigh, we've had this same little discussion at least five times here. The browser object model is not the XML DOM. It is the HTML DOM (which is ill-defined in practice, and is not really a superset of the XML DOM), plus other stuff. There is currently no implementation of it outside of browsers. Plus you have to build the damned DOM in the first place :-) > too hard to me, but of course, I'm underestimating that :) Yes. As I've said many times before here, getting something working is not too hard, getting something useful is harder (how much depends on the audience, I guess), getting something good is a lot of work. Maybe this is universally true, but especially so of JS support for LWP :-) John