<div dir="ltr">Hello cafe,<br><br>I&#39;m happy to announce the release of my first package antiquoter [1], a combinator library for writing quasiquoters and antiquoters. The main aim is to simplify their definitions and reduce copy-and-paste programming.<br>
<br>The main feature the current version is trying to solve is code duplication in antiquoters. The problem for writing antiquoters is that it need to be done twice, once for use as an expression and once for use as a pattern. These two implementations are very similar, which leads to copy-and-paste programming. For a good example of what this leads to see the antiquoters of language-c-quote[2], where almost every antiquoter is written twice. A very simple example with the rewritten version is provided in the documentation [3].<br>
<br>Lars<br><br>[1]:<a href="http://hackage.haskell.org/package/antiquoter">http://hackage.haskell.org/package/antiquoter</a><br>[2]:<a href="http://hackage.haskell.org/packages/archive/language-c-quote/0.7.1/doc/html/src/Language-C-Quote-Base.html">http://hackage.haskell.org/packages/archive/language-c-quote/0.7.1/doc/html/src/Language-C-Quote-Base.html</a><br>
[3]:<a href="http://hackage.haskell.org/packages/archive/antiquoter/0.1.0.0/doc/html/Language-Haskell-AntiQuoter-ExpPat.html">http://hackage.haskell.org/packages/archive/antiquoter/0.1.0.0/doc/html/Language-Haskell-AntiQuoter-ExpPat.html</a><br>
[4]:<a href="https://github.com/Laar/antiquoter">https://github.com/Laar/antiquoter</a><br></div>