Not logged in

Origins of Jsi

Jsi originally derives from the javascript interpreter quad-wheel.

Although not much of the original source code remains (Jsi is about 5 times larger) ancestry can be seen in the parser, eval-engine and test suite.

Jsi is a C-centric, byte-code interpreted focused on embedded development.

This makes it very different from Node-js, a C++-centric compiler that is non-trivial to embed.

Internally Jsi is modelled after Tcl.

A Glue Language

Like Tcl, Jsi is meant to be a glue language.

This approach implements time/space critical functionality as C modules, which is then glued together with scripts.

To summarize:

Testing is one example where efficiency is less important (eg. Sqlite Testing) and glue code can be helpful.

ECMA Compatibilty

Jsi implements version 5.1 of the Ecma-script 262 standard, with the following deviations:

Extensions to the 5.1 standard include:


Following are principle goals Jsi:

Note that C-integration is the main priority here, not speed of script execution.

And while compiling as C++ is supported, it is mostly used for integrity checking.


Following is a partial list of things that are either incomplete or unimplemented: