Qt also provides Qt Quick, that includes a declarative scripting language called QML that allows using JavaScript to provide the logic. Qt supports various compilers, including the GCC C++ compiler, the Visual Studio suite, PHP via an extension for PHP5, and has extensive internationalization support. An example of such a non-GUI program using Qt is the Cutelyst web framework. Non-GUI programs can also be developed, such as command-line tools and consoles for servers. Most GUI programs created with Qt have a native-looking interface, in which case Qt is classified as a widget toolkit. Qt is used for developing graphical user interfaces (GUIs) and multi-platform applications that run on all major desktop platforms and most mobile or embedded platforms.