Repository navigation
v0.1.0
The first release: the front end of the Synod compiler. It reads, checks
the form of, and formats Synod source for specification v0.2.0. Running
programs (synod run) comes in a later release.
Added
synod fmt [paths…]rewrites.synodfiles into canonical form;
--checklists the files that would change and exits 1.synod check [paths…]reports syntax, indentation, header and
canonical-form errors, with a hint showing the canonical line;
--jsonprints thesynod-check/1format.synod versionprints the language, compiler and format versions; the
compiler line shows the release tag and the commit it was built from.- Lexer and parser for the whole structure grammar: indentation blocks,
comments, continuation lines (else,otherwise), holes, typed
collections, members, import paths. - Canonical formatting: numbers, durations and colors respelled; single-item
parentheses removed;not (…)rewritten to the direct operator; imports
hoisted and sorted; blank lines and comments laid out. - Binaries for macOS (arm64, amd64, universal), Linux (amd64, arm64) and
Windows (amd64, arm64); install with Homebrew
(brew install synodlang/tap/synod), Scoop,install.shor
go install. See https://synodlang.github.io/install/.
Known limitations
- Binaries are not code-signed: macOS and Windows warn when they are
downloaded with a browser. Package managers andinstall.shavoid this. - Phrase resolution, types and contexts are not checked yet.