
Security News
Astral Launches pyx: A Python-Native Package Registry
Astral unveils pyx, a Python-native package registry in beta, designed to speed installs, enhance security, and integrate deeply with uv.
clingo-wasm
Advanced tools
Clingo compiled to WebAssembly with Emscripten. Try it online at https://observablehq.com/@cmudig/clingo or https://domoritz.github.io/clingo-wasm.
This repo combines work from two previous repos: https://github.com/Aluriak/webclingo-example and https://github.com/domoritz/wasm-clingo.
npm install clingo-wasm
or yarn add clingo-wasm
.
const clingo = require("clingo-wasm");
clingo.run("a. b:- a.").then(console.log);
Load Clingo from the JSDelivr CDN.
<script src="https://cdn.jsdelivr.net/npm/clingo-wasm@VERSION"></script>
We expose an UMD bundle that runs Clingo in a separate worker thread. Therefore, all commands need to be asynchronous.
<script>
async function main() {
// optionally pass URL to WASM file:
// await clingo.init("https://cdn.jsdelivr.net/npm/clingo-wasm@VERSION/dist/clingo.wasm")
console.log(await clingo.run("a. b :- a."));
console.log(await clingo.run("{a; b; c}.", 0));
}
main();
</script>
The Clingo worker can also be terminated and restarted with the following API. This API is useful when the Clingo program takes much time and the user want to interrupt it. Moreover, please re-initialize the Clingo WASM after restarting the worker.
<script>
async function restart() {
await clingo.restart(
"https://cdn.jsdelivr.net/npm/clingo-wasm@VERSION/dist/clingo.wasm"
); // re-initialize Clingo
}
restart();
</script>
Run npm run build:wasm
if you have Docker. For testing purposes, you can run scripts/build_clingo.sh
from the root directory of the project.
Run npm run build
to build the js files. Run npm test
to run tests in node.
Update the versions in scripts/versions.sh
and in the badges in this README.md
. Then push to a new branch and let GitHub actions build the new WASM file.
FAQs
Clingo compiled to WebAssembly
The npm package clingo-wasm receives a total of 1,171 weekly downloads. As such, clingo-wasm popularity was classified as popular.
We found that clingo-wasm demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Astral unveils pyx, a Python-native package registry in beta, designed to speed installs, enhance security, and integrate deeply with uv.
Security News
The Latio podcast explores how static and runtime reachability help teams prioritize exploitable vulnerabilities and streamline AppSec workflows.
Security News
The latest Opengrep releases add Apex scanning, precision rule tuning, and performance gains for open source static code analysis.