## symantic-parser-0.2.0.20210703 * Fix mutual let bindings by defining them all together. * Add a fixpoint to analyse the minimal reads and raisable exceptions of each let binding in the `Machine`. Those analyses respectively enable to minimize calls to `checkHorizon`, and minimize the number of `catchHandler`s passed to `call`s and `jump`s. Computed values appear in golden tests. * Add golden tests for `TemplateHaskell` splices using `runQ` which is enough here and avoids to have a custom `Setup.hs` in order to correctly run an external `ghc` like [singletons](https://hackage.haskell.org/package/singletons-base-3.0/src/Setup.hs) does. * Add preliminary support for error reporting using exceptions, based upon: [A Parsing Machine for Parsing Expression Grammars with Labeled Failures](https://dl.acm.org/doi/10.1145/2851613.2851750) * Add benchmarks for Brainfuck parsers. * Change `ValueCode` to `Production` which relies upon `Data.Functor.Product`, to be able to leverage type-classes to handle the burden of defining both `Identity` and `CodeQ` for `Production` expressions. * Rename `Symantic.Univariant` to `Symantic.Typed`. * Add `Language.Haskell.TH.Show` utility to avoid adding a `Symantic.Typed.View` entry into `Production` which would make writing `Production`s even more painful. This adds the benefit of printing any Haskell code, instead of only operators having symantics, eg. in `Symantic.Typed.Lang`. However `Symantic.Typed.View` is no longer used now, and thus `lam1`s no longer singled-out, not a big deal though. * Major refactoring. * Minor other optimizations and fixes. ## symantic-parser-0.1.0.20210201 * Add error reporting using the farthest position reached. * Add factoring of minimal input length checks ("horizon" checks). * Open data-types `Comb` and `Instr` using a new technique based upon `data family` and `Typeable`. * Leverage symantics further more to simplify the optimization passes. * Rename some types and terms for clarity. * Fix reproductibility of unit tests by hidding unique names. * Add a few more tests. ## symantic-parser-0.0.0.20210102 * Add missing golden tests in the Cabal tarball. ## symantic-parser-0.0.0.20210101 * Initial (pre-alpha) release, on the unsuspecting world at sleep.