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: > > > You can supply your own file names. In the above example, the file name is a 32-bit hash of the source code.

Versions [RSS] [faq] 0.5, 0.6, 0.7, 0.8, 0.10, 0.12, 0.13, 0.13.1
Dependencies base (==4.*), containers, filepath, hashable, hint, monadplus, mtl, music-preludes, process, semigroups [details]
License BSD-3-Clause
Author Hans Hoglund
Maintainer Hans Hoglund <>
Category Music
Source repo head: git clone git://
Uploaded by HansHoglund at 2013-06-07T11:47:16Z
Distributions NixOS:0.13.1
Executables transf
Downloads 5014 total (17 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs not available [build log]
All reported builds failed as of 2016-12-21 [all 7 reports]


  • Text
    • Text.Transf


Maintainer's Corner

For package maintainers and hackage trustees