transf: Text transformer and interpreter.

[ bsd3, compilers-interpreters, library, program, text ] [ Propose Tags ]

Transf is functional 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 arbirary Haskell computation. Transf contains a full Haskell interpeter and can even interpret its input as Haskell.

The main purpose of Transf is to allow the embedding of Domain-Specific Languages in plain 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 32-bit hash of the source code.

Modules

[Last Documentation]

  • Text
    • Text.Transf

Downloads

Maintainer's Corner

Package maintainers

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 base (>=4 && <5), containers, filepath, hashable, hint, monadplus, mtl, music-preludes, process, semigroups [details]
License BSD-3-Clause
Author Hans Hoglund
Maintainer Hans Hoglund <hans@hanshoglund.se>
Category Music
Source repo head: git clone git://github.com/hanshoglund/transf.git
Uploaded by HansHoglund at 2013-06-07T11:50:47Z
Distributions
Reverse Dependencies 1 direct, 0 indirect [details]
Executables transf
Downloads 5523 total (20 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs not available [build log]
All reported builds failed as of 2016-12-21 [all 7 reports]