PUZZLE as an abstract, extendable programming language.
Important: The puzzle project is in early stage and under development. It's not yet production ready. If you'd like to contribute to the code or the module ecosystem, feel free to open a PR.
// Output something
print 'Welcome future puzzle developer!';
// Include a thrid party module (local or remote)
use 'https://url.com/module.js';
// stora a variable
set name Test;
PUZZLE runs on JavaScript Engines and can be used on Node, Browsers and via it's CLI.
$ npm i puzzlelang --global
$ puzzle
$ print "Hello World!"
"Hello World"
// hello.puzzle
print "I am a puzzle file"
$ puzzle run hello.puzzle
"I am a puzzle file"
puzzle scripts can also be run inside JavaScript
Node
puzzle.parse('print "Hello, I am embedded"')
Browsers
<script src="https://cdn.jsdelivr.net/npm/puzzlelang@latest/puzzle.browser.js">
// For Node.js
const puzzle = require('puzzlelang');
// For browsers:
<script src="puzzle.js"/>
<script type="text/x-puzzle">
print "hello from the browser!";
</script>
You are welcome to contribute to the puzzle language and ecosystem. Make sure you familiarize yourself with the Contribution Guidelines before opening a PR or Issue.
PUZZLE is open source and released under the MIT License.
Copyright (c) M. Boelling