- Macros can be defined in sibilant and included at compile time.
- Sibilant is entirely written in sibilant and can recompile itself.
- 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.
Try it before you install
sibilantjs.info includes an in-browser as-you-type sibilant compiler and tutorial, so you can get a sense of the language without leaving your browser.
$ npm install sibilant -g $ sibilant --help
Learning the language and examples
The most up to date documentation will always be sibilantjs.info which includes an as-you-type in-browser sibilant compiler. Check out sibilant itself, which is written 100% in sibilant to get a sense of what's possible.