Category:Developing Qt::Qt Script
| This article is nominated for deletion. Reason: Outdated information. No useful content. Almost all links broken. Category contains only this article.|
Please raise your support/opposition to this nomination in the article's discussion page.
There is a mailing list for QtScript development. You can subscribe to it at http://lists.qt.nokia.com/mailman/listinfo/qt-script
We have an IRC channel on FreeNode: #qt-script (For a full list of IRC channels of interest to Qt developers, see OnlineCommunities.)
For contributing to QtScript, see the Qt Contribution Guidelines.
Making Applications Scriptable
What's NOT in Scope
QtScript was preceded by QSA — Qt Script for Applications. QSA implements a subset of a draft of the (never-completed) ECMAScript 4 language. It also contained API for embedding script editing and "user script execution" into your application (QSA Workbench).
The QtScript module introduced in Qt 4.3 was inspired by QSA, but doesn't share any API or implementation.
The QtScript runtime was built on an in-house-developed, bytecode-based interpreter that performed well for its time.
Qt 4.4 added the QScriptEngineAgent class, which provides an API for hooking into low-level events in the script engine. This class could be used to implement debugging- and profiling-related tools for QtScript.
Qt 4.4 also introduced QScriptClass, an interface for implementing "catch-all" (interceptor-based) access to script objects; and QScriptString, a class that represents interned property names (for faster comparison and property access).
Qt 4.5 introduced the QtScriptTools module, which provides a graphical debugger for QtScript.
Tests and BenchmarksThe QtScript autotests are located in the
The QtScript benchmarks are located in the
tests/benchmarks/script<code> directory in the Qt repository.
In addition to benchmarks for the C++ API, the SunSpider and V8 benchmarks have been imported.
These benchmarks can be used to compare the performance of different versions of Qt/QtScript, in particular to ensure that there are no performance regressions between versions.
The main challenge with this project is that the C API is limited compared to QtScript's API, so a lot of functionality will have to be added to the C API before the QtScript API can be completed on top.
This project is currently paused while V8 is being investigated as an alternative.
== QtScript and V8 ==
This category currently contains no pages or media.