gitextract_85yw3pm4/ ├── .gitattributes ├── .gitignore ├── CMakeLists.txt ├── HISTORY.md ├── LICENSE ├── README.md ├── assertion-tests/ │ ├── add-items-list-1.toc │ ├── add-items-list-2.toc │ ├── and-constraints-1.toc │ ├── and-constraints-2.toc │ ├── apply-constructor.toc │ ├── bad-add.toc │ ├── bad-and-1.toc │ ├── bad-and-2.toc │ ├── bad-and-clause.toc │ ├── bad-apply-constructor.toc │ ├── bad-arity-1.toc │ ├── bad-constructor-call.toc │ ├── bad-constructor-param-1.toc │ ├── bad-constructor-param-2.toc │ ├── bad-dipatch-type.toc │ ├── bad-enum-1.toc │ ├── bad-enum-2.toc │ ├── bad-enum-3.toc │ ├── bad-enum-4.toc │ ├── bad-field-1.toc │ ├── bad-field-2.toc │ ├── bad-field-3.toc │ ├── bad-field-4.toc │ ├── bad-field-5.toc │ ├── bad-flat-map-inner.toc │ ├── bad-function-returns-1.toc │ ├── bad-function-returns-2.toc │ ├── bad-impl-arity.toc │ ├── bad-impl-return-value.toc │ ├── bad-inline-result-type.toc │ ├── bad-inner-1.toc │ ├── bad-inner-10.toc │ ├── bad-inner-11.toc │ ├── bad-inner-12.toc │ ├── bad-inner-13.toc │ ├── bad-inner-14.toc │ ├── bad-inner-15.toc │ ├── bad-inner-16.toc │ ├── bad-inner-2.toc │ ├── bad-inner-3.toc │ ├── bad-inner-4.toc │ ├── bad-inner-5.toc │ ├── bad-inner-6.toc │ ├── bad-inner-7.toc │ ├── bad-inner-8.toc │ ├── bad-inner-9.toc │ ├── bad-inner-or.toc │ ├── bad-let.toc │ ├── bad-list-of-1.toc │ ├── bad-nested-let.toc │ ├── bad-or-1.toc │ ├── bad-or-2.toc │ ├── bad-result-sum-type.toc │ ├── bad-return-value.toc │ ├── bad-setter-call-1.toc │ ├── bad-setter-call-2.toc │ ├── bad-state-maybe-value-1.toc │ ├── bad-state-maybe-value-2.toc │ ├── bad-type-comp.toc │ ├── bad-vector-of-1.toc │ ├── checked-map-1.toc │ ├── checked-map-2.toc │ ├── closure-1.toc │ ├── closure-2.toc │ ├── closure-constraint.toc │ ├── closure-param.toc │ ├── comp-bad-type-1.toc │ ├── comp-bad-type-2.toc │ ├── conj-to-getter-result-1.toc │ ├── conj-to-getter-result-2.toc │ ├── constructor-param-1.toc │ ├── constructor-param-2.toc │ ├── constructor-param-3.toc │ ├── contents-2.toc │ ├── deeply-nested-vector-1.toc │ ├── deeply-nested-vector-2.toc │ ├── destruct-variadic-tail-2.toc │ ├── dup-protocol-name.toc │ ├── dynamic-call-1.toc │ ├── dynamic-call-2.toc │ ├── dynamic-call-3.toc │ ├── dynamic-call-4.toc │ ├── dynamic-call-5.toc │ ├── dynamic-call-6.toc │ ├── dynamic-call-7.toc │ ├── dynamic-call-8.toc │ ├── dynamic-field-type-1.toc │ ├── dynamic-field-type-2.toc │ ├── dynamic-nested-value-1.toc │ ├── dynamic-proto-param-1.toc │ ├── empty-defn.toc │ ├── field-and-seq-conflict.toc │ ├── field-constraint.toc │ ├── field-shadow.toc │ ├── flat-map-param.toc │ ├── impl-violates-proto.toc │ ├── incompatible-tails.toc │ ├── init-type.toc │ ├── insufficient-static-elements-1.toc │ ├── insufficient-static-elements-2.toc │ ├── insufficient-static-elements-3.toc │ ├── insufficient-static-elements-4.toc │ ├── int-too-large.toc │ ├── items-constraints-1.toc │ ├── items-constraints-2.toc │ ├── items-constraints-3.toc │ ├── key-violation.toc │ ├── list-items-types.toc │ ├── literal-hash-map-1.toc │ ├── literal-hash-map-2.toc │ ├── min-count.toc │ ├── missing-namespaced-sym.toc │ ├── multi-constraint-violated.toc │ ├── nested-destruct-1.toc │ ├── nested-destruct-2.toc │ ├── nested-destruct.toc │ ├── nested-items-conflict.toc │ ├── or-prop.toc │ ├── param-in-and.toc │ ├── param-in-or.toc │ ├── partial-param.toc │ ├── preserve-asserts.toc │ ├── preserve-static-info-1.toc.test │ ├── preserve-static-info-2.toc.test │ ├── preserve-static-info-3.toc.test │ ├── propogate-inner-1.toc │ ├── propogate-inner-2.toc │ ├── propogate-through-let.toc │ ├── propogate-through-seq.toc │ ├── propogate-through-vec.toc │ ├── proto-fn-constraint-prop.toc │ ├── proto-fn-min-count.toc │ ├── proto-fn-param.toc │ ├── restrict-conflict.toc │ ├── restrict-nested-item.toc │ ├── restrict-param.toc │ ├── return-bad-type.toc │ ├── return-generic-1.toc │ ├── return-list-of-1.toc │ ├── return-list-of-2.toc │ ├── return-sum-type.toc │ ├── simple-conflict.toc │ ├── static-fixed-dynamic-result-type-1.toc │ ├── static-fixed-dynamic-result-type-2.toc │ ├── unkown-field.toc │ ├── update-field-1.toc │ ├── variadic-constraints.toc │ ├── variadic-count-1.toc │ ├── variadic-count-2.toc │ └── vect-len.toc ├── bin/ │ ├── build-toccata.sh │ └── toccata.sh ├── core.c ├── core.h ├── core.toc ├── ebnf.md ├── em-run ├── examples/ │ ├── apply-maybe.toc │ ├── apply-vector.toc │ ├── config-file.toc │ ├── debugging.toc │ ├── flat-map-list.toc │ ├── flat-map-maybe.toc │ ├── greeting.toc │ ├── howdy.toc │ ├── json-ebnf.toc │ ├── json-graph.toc │ ├── json-parser.toc │ ├── json.toc │ ├── map-maybe.toc │ ├── map-vector.toc │ ├── number-option.toc │ └── tictactoe.toc ├── foundry/ │ └── docker/ │ ├── Development.docker │ ├── README.md │ ├── bashrc │ ├── build-devenv │ ├── build-devenv.cmd │ ├── enter-dev │ └── enter-dev.cmd ├── interpreter-tests/ │ ├── abort-memory-leak.toc │ ├── bad-and-clause-type-1.toc │ ├── bad-apply-arg-1.toc │ ├── bad-apply-arg-2.toc │ ├── bad-constructor-arg-1.toc │ ├── bad-constructor-arg-2.toc │ ├── bad-default-proto-param.toc │ ├── bad-field-1.toc │ ├── bad-field-2.toc │ ├── bad-proto-impl-param-const.toc │ ├── bad-proto-param.toc │ ├── bad-proto-return-type.toc │ ├── bad-reify-arg-1.toc │ ├── bad-reify-arg-2.toc │ ├── bad-reify-arg-3.toc │ ├── constrain-let-expr.toc │ ├── constrain-tagged.toc │ ├── insufficient-apply-args-1.toc │ ├── insufficient-apply-args-2.toc │ └── insufficient-invoke-args-1.toc ├── par-test ├── regression-tests/ │ ├── Boomer.toc │ ├── agent-regressions.toc │ ├── and-prop.toc │ ├── boom.toc │ ├── comment-in-deftype.toc │ ├── cond-expr-1.toc │ ├── cond-expr-2.toc │ ├── cond-expr-3.toc │ ├── cond-expr-4.toc │ ├── cond-expr-5.toc │ ├── destruct-test.toc │ ├── free-static-value.toc │ ├── function-regressions.toc │ ├── future-regressions.toc │ ├── hash-map-regressions.toc │ ├── integer-regressions.toc │ ├── interpreter-test.toc │ ├── lazy-list-regressions.toc │ ├── list-regressions.toc │ ├── maybe-regressions.toc │ ├── or-and-constraints.toc │ ├── promise-regressions.toc │ ├── regression-tester.toc │ ├── string-regressions.toc │ ├── symbol-regressions.toc │ ├── tail-cond-1.toc │ ├── test-apply-constructor.toc │ ├── test-comment-in-let.toc │ ├── test-def-empty.test │ ├── test-either.toc │ ├── test-for.toc │ ├── test-gensym.toc │ ├── test-global-empty-list.toc │ ├── test-hlist-cons.toc │ ├── test-ignore-inferred.toc │ ├── test-inline-invoke.toc │ ├── test-inline-namespaced-sym.toc │ ├── test-inline-sym-literal.toc │ ├── test-inlined-result-constraint.toc │ ├── test-or-comment.toc │ ├── test-parser-efficience.toc │ ├── test-proto-def-constraints.toc │ ├── test-proto-impl-destruct.toc │ ├── test-recursive-map-fn.toc │ ├── test-regressions.toc │ ├── test-tail-recur-1.toc │ ├── test-tail-recur-2.toc │ ├── test-tail-recur-3.toc │ ├── test-threading.toc │ ├── test-trailing-comment.toc │ ├── test-type-of-tail.toc │ ├── test-underscore-inline.toc │ ├── test-uni.toc │ ├── test1.toc │ ├── test10.toc │ ├── test11.toc │ ├── test12.toc │ ├── test13.toc │ ├── test14.toc │ ├── test15.toc │ ├── test16.toc │ ├── test17.toc │ ├── test18.toc │ ├── test19.toc │ ├── test20.toc │ ├── test3.toc │ ├── test4.toc │ ├── test5.toc │ ├── test6.toc │ ├── test7.toc │ ├── test8.toc │ ├── test9.toc │ ├── types-regressions.toc │ └── vector-regressions.toc ├── run ├── runtime-tests/ │ ├── agent-loop.toc │ ├── apply-constructor.toc │ ├── bad-arity-1.toc │ ├── bad-arity-2.toc │ ├── bad-enum-1.toc │ ├── bad-field-1.toc │ ├── bad-field-2.toc │ ├── bad-maybe-flat-map.toc │ ├── bad-param.toc │ ├── bad-proto-param-1.toc │ ├── bad-proto-param-2.toc │ ├── bad-proto-param-3.toc │ ├── bad-proto-param-4.toc │ ├── bad-variadic-param.toc │ ├── check-and-1.toc │ ├── check-and-2.toc │ ├── check-and-3.toc │ ├── check-and-4.toc │ ├── check-every-time.toc │ ├── check-or-1.toc │ ├── check-or-2.toc │ ├── check-or-3.toc │ ├── check-or-4.toc │ ├── check-params-1.toc │ ├── check-params-2.toc │ ├── check-return-sum-type.toc │ ├── check-tail-either.toc │ ├── closure-param.toc │ ├── constructor-param.toc │ ├── default-impl-parameter.toc │ ├── default-proto.toc │ ├── destruct-variadic-tail-1.toc │ ├── flat-map-param.toc │ ├── higher-order-fn.toc │ ├── higher-order-variadic.toc │ ├── insufficient-elements.toc │ ├── int-too-large-1.toc │ ├── int-too-large-2.toc │ ├── int-too-large.toc │ ├── int-too-small.toc │ ├── invalid-type.toc │ ├── invoke-param.toc │ ├── list-len-1.toc │ ├── list-len-2.toc │ ├── list-len-3.toc │ ├── nested-destruct-1.toc │ ├── nested-destruct-2.toc │ ├── nested-destruct.toc │ ├── param-in-cond-2.toc │ ├── param-in-cond.toc │ ├── preserve-asserts.toc │ ├── promise-loop.toc │ ├── proto-fn-arg.toc │ ├── test-tail-and.toc │ ├── test-tail-or.toc │ ├── update-field-2.toc │ └── variadic-count-2.toc ├── test ├── test-assertion ├── test-regression ├── test-runtime-check ├── toccata.c ├── toccata.toc └── update-deps