Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[asciidoc-lang-dev] [ANN] AsciiDoc implementation that can be used as a Pandoc front-end

Hi!

The last months I've been slowly working on an AsciiDoc parser in Haskell that can be used as a Pandoc front-end:

  https://github.com/gmarpons/asciidoc-hs

It's still not ready for real use (a lot of AsciiDoc features are missing), but I think the foundations for easily adding new features are laid out.

I've written a blog post about my goals, difficulties found, and solutions provided so far that I think it might be of interest to the members of this list:

  https://www.tweag.io/blog/2021-06-15-asciidoc-haskell-pandoc/

I don't want to short-circuit the spec project plan and I'll try to contribute to it in the next weeks, but I thought that the release of my project and blog post were relevant enough to share here.

I believe that the main technical innovation of the project is that there is an independent inline parser based on a formal (yet eclectic) grammar that can handle constrained/unconstrained formatting. The grammar is simple enough to be:

  1. Easily augmented with new features
  2. Useful in taking decisions about precedence (disambiguation)
3. Useful to prove different properties about the parser (e.g., that any character can be processed at any point in the input).

The description of the grammar can be found here:

  https://github.com/gmarpons/asciidoc-hs/wiki/Inline-Parsing

Any feedback and contributions to the project are very welcome!

--
Guillem


Back to the top