- Sibilant is inspired by lisp and follows many lisp conventions,
- Macros can be defined in sibilant and included at compile time.
- Sibilant is entirely written in sibilant.
- Prefer verbose names to abbreviations by default.
- Avoid line noise. Prefer established punctuation semantics from
natural languages and common programming languages (eg commas come
after things and mean a pause or separation).
- Prefer expressions to statements. This is the most notable exception
are used extensively to this end.
- Allow as much of the language to be modified in-source as
possible. This includes the ability to rename/remove/redefine all
keywords and macros.
should be opt-in.
- Add language features slowly, and only when there's a real use
case. Don't blindly implement Lisp features without reasoning
through the need.
- Provide tools to simplify avoidance of repetition.
First, install node.js [
github ] and npm [
github ]. Then, it's as simple as:
$ npm install sibilant -g
$ sibilant --help
sibilant> (+ 1 2)
(1 + 2)
sibilant> (console.log "hello world")
sibilant.org includes an in-browser
as-you-type sibilant compiler and tutorial, so you can get a sense of
the language without leaving your browser.
The most up to date documentation is at
sibilant.org and docs.sibilant.org.
Also, check out sibilant itself,
which is written 100% in
sibilant to get a
sense of what's possible.
Sibilant is released under the MIT