transf: Text transformer and interpreter.
Transf is simple text transformer and interpreter.
It scans its input for guard tokens and passes everything between to transformation functions. Transformation functions are composed from a small set of combinators and may perform arbitrary Haskell computation. Transf contains a full Haskell interpreter and can even interpret its input as Haskell.
The main purpose of Transf is to allow the embedding of Domain-Specific Languages in text or Markdown files. For example one could use it with Diagrams as follows:
This is my file. Here is an image: ~~~diagram "A circle!" circle <> stretchX 2 square ~~~
Transf can then generate the image, and replace the source in the text file with the name of the actual image. It can also include the source.
This is my file. Here is an image: ![A circle](a22b15efb10b.png)
You can supply your own file names. In the above example, the file name is a hash of the source code.
Downloads
- transf-0.13.1.tar.gz [browse] (Cabal source package)
- Package description (as included in the package)
Maintainer's Corner
For package maintainers and hackage trustees
Candidates
- No Candidates
Versions [RSS] | 0.5, 0.6, 0.7, 0.8, 0.10, 0.12, 0.13, 0.13.1 |
---|---|
Dependencies | async, base (>=4 && <5), containers, data-default, filepath, hashable, hint, monadplus, mtl, process, semigroups [details] |
Tested with | ghc >=0 |
License | BSD-3-Clause |
Author | Hans Hoglund |
Maintainer | Hans Hoglund <hans@hanshoglund.se> |
Category | Text, Compilers/Interpreters |
Source repo | head: git clone git://github.com/hanshoglund/transf.git |
Uploaded | by HansHoglund at 2014-08-19T19:21:55Z |
Distributions | |
Reverse Dependencies | 1 direct, 0 indirect [details] |
Executables | transf |
Downloads | 5652 total (10 in the last 30 days) |
Rating | (no votes yet) [estimated by Bayesian average] |
Your Rating | |
Status | Docs uploaded by user [build log] All reported builds failed [all 1 reports] |