SlackBuilds Repository

15.0 > Development > quickjs (2024.01.13)

QuickJS is a small and embeddable Javascript engine by Fabrice Bellard
and Charlie Gordon. It supports the ES2023 specification including
modules, asynchronous generators, proxies and BigInt.
It optionally supports mathematical extensions such as big decimal
floating point numbers (BigDecimal), big binary floating point numbers
(BigFloat) and operator overloading.

Main Features:
* Small and easily embeddable: just a few C files, no external
* Fast interpreter with very low startup time
* Almost complete ES2023 support including modules, asynchronous
generators and full Annex B support (legacy web compatibility).
* Passes nearly 100% of the ECMAScript Test Suite tests when selecting
the ES2023 features.
* Can compile Javascript sources to executables with no external
* Garbage collection using reference counting (to reduce memory usage
and have deterministic behavior) with cycle removal.
* Mathematical extensions: BigDecimal, BigFloat, operator overloading,
bigint mode, math mode.
* Command line interpreter with contextual colorization in JS.
* Small built-in standard library with C library wrappers.

In order to adhere to Slackware standards the source is patched to:
* change library paths in the compiler
* build a shared library
Since the default behaviour of the compiler is to output statically
linked binaries, an aditional shared library is provided so that users
may produce C files from Javascript source code
(e.g.: qjsc -e in.js -o out.c), and then compile and link dynamically,
cc -I /usr/include/quickjs out.c -o executable -lquickjs
I believe this is the less intrussive set of changes to achieve those

Maintained by: Juan M. Lasca
Keywords: javascript,js,interpreter,compiler,calculator
ChangeLog: quickjs


Source Downloads:
quickjs-2024-01-13.tar.xz (ea9fa8c503c4125dff9fd42c38b891d0)

Download SlackBuild:
quickjs.tar.gz.asc (FAQ)

(the SlackBuild does not include the source)

Individual Files:

Validated for Slackware 15.0

See our HOWTO for instructions on how to use the contents of this repository.

Access to the repository is available via:
ftp git cgit http rsync

© 2006-2024 Project. All rights reserved.
Slackware® is a registered trademark of Patrick Volkerding
Linux® is a registered trademark of Linus Torvalds