back to index

Introduction

TKS, short for "toolkit script-language", is an open and portable glue language for native code libraries. The script engine focuses on C++ API backends but also allows for C and Assembler functions. The scripts look much like C/C++/JavaScript/PHP so it will not take someone too long to get familiar with the syntax. A CPU table based (i.e. rather portable) Just In Time (JIT) compiler can speed up script execution by up to 100 times.

TKS serves as a scriptable application host for custom C++ libraries (“plugins”). Bindings for OpenGL,SDL,SDL_net,libpng,zlib,MiniFMOD and MySQL are available while other extensions are currently being developed, e.g. for the FOX GUI toolkit.

A TKS application project can be compiled to a gzip compressed TKX archive which will contain all data necessary to run that application. This technique makes it possible to deploy applications without prior local installation (besides the TKS runtime) which suggests the use for network based systems, e.g. the world wide web or intranets. TKX archives, in contrary to regular executables, are hardware-independent and can thus be used across multiple platforms.

The current implementation of the scriptlanguage, its source codes as well as precompiled distributions are available under the terms of the GNU General Public License.

The interface for application-specific C/C++ extension libraries (YAC) is released under terms of the GNU Lesser General Public License which also allows for proprietary (i.e. closed source) extensions (plugins).

Note: The code snippets found in this documentation can be run as-is, just copy them to a test.tks file and run them with the "tks" CLI command.


glue: am. “glue”. Generic term for any interface logic or protocol that connects two component blocks.
back to index