- 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).
- 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.
- 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.
$ npm install sibilant -g $ sibilant --help
Hello world in the REPL
$ sibilant sibilant> (+ 1 2) (1 + 2) result: 3 sibilant> (console.log "hello world") console.log("hello world") hello world
Try it before you install
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.
Learning the language
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.