Hi Simon,
It would really be preferred if the Qt API were just built on top of the standard JSC C-API, and was kept external from the repository. Currently the JavaScriptoCore API is completely platform and library independent except for the one somewhat unfortunate API referring to CoreFoundation but that's only exposed in the umbrella JavaScriptCore.h header, the JavaScript.h header is clean of any platform dependency.

The C API that exists already has guaranteed API and ABI compatibility, and this is already proving to be difficult (and in some cases a hindrance) to maintain as we strive to improve JSC performance. Adding an additional API would simply serve to make this task even more complex and difficult, and would have no benefit to the project while carrying substantial cost moving forward. A further issue is that any API that binds directly to JSC internals realistically needs to be developed by the engineers working on the core engine as a developing such an API needs enormous care to not cause harmful long term problems.

Over time we have added new functionality to the C-API as the need developed, so if there is specific functionality the Qt API would depend on we would be open to any suggestions.

--Oliver

On Aug 26, 2009, at 1:12 PM, Simon Hausmann wrote:

Hi fellow WebKit contributors!

Currently the Qt port of WebKit merely provides an API to deal with rendering web content, and as such our interface to the underlying JavaScriptCore engine
is minimal.

We, the team of Qt developers at Nokia and INdT, would like to add a C++ Qt API to JavaScriptCore as well, to allow application developers to for example
embed the JavaScriptCore engine into their applications.

We want to give developers the ability to introspect the environment, inject custom classes and call functions using a C++ API that uses Qt types and has a Qt-ish feel to it. Current releases of Qt come with such an API as part of the QtScript module, which however is based on an in-house developed interpreter.

So we decided to combine the well-tested API with a much better engine and
spent the past few months making QtScript merely another API for
JavaScriptCore, with only minimal changes.

We would like to contribute this API to the WebKit project, actively develop it there and therefore ask the community for opinions, thoughts or objections.

The API itself consists of 12 public classes. An introduction and
overview as well as the detailed class documentation can be found at

       http://doc.qt.nokia.com/4.6-snapshot/scripting.html

which is based on the unchanged API on top of the old engine.

If the community agrees, we would like to begin the process of
contribution in Bugzilla with patches for review that populate a
sub-folder in JavaScriptCore, for example JavaScriptCore/qt or
JavaScriptCore/API/qt.


On behalf of the Qt developers,
Simon
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev

Reply via email to