This repository was archived by the owner on Jan 17, 2025. It is now read-only.
- The composition json is now just the AST with no implicit lowering.
composer.lower(composition, [combinators])is now exposed and gives control over the lowering (if desired).- The
composecommand has two new options:--lowerand--version. - The combinators are now automatically derived from spec, e.g,
if: { args: [{ _: 'test' }, { _: 'consequent' }, { _: 'alternate', optional: true }], since: '0.4.0' }. - The spec for the combinators is now exposed as well (
composer.combinators). - The core language has shrunk thanks to
composer.maskand a more aggressive use of lowering. - The fsm has fewer states.
- The code is now split into three components: 1 compiler component available client-side and server-side, 2 client-side composer, and 3 server-side conductor.