The noise package

[Tags:library, mit, program, test]

A friendly language for graphic design

[Skip to Readme]


Versions 0.0.1
Dependencies base (==4.5.*), blaze-markup (==0.5.*), blaze-svg (==0.3.*), bytestring (==0.9.*), containers (==0.4.*), cryptohash (==0.8.*), network (==2.3.*), noise, parsec (==3.1.*) [details]
License MIT
Copyright Tom Brow
Author Tom Brow
Maintainer Tom Brow <>
Category Text
Home page
Bug tracker
Source repository head: git clone git://
Uploaded Tue May 21 20:46:26 UTC 2013 by TomBrow
Distributions NixOS:0.0.1
Downloads 276 total (2 in the last 30 days)
0 []
Status Docs not available [build log]
All reported builds failed as of 2016-12-21 [all 7 reports]


  • Text
    • Noise
      • Text.Noise.Compiler
        • Text.Noise.Compiler.Document
          • Text.Noise.Compiler.Document.Color
      • Text.Noise.Error
      • Text.Noise.Parser
        • Text.Noise.Parser.AST
        • Text.Noise.Parser.Character
      • Text.Noise.Renderer
      • Text.Noise.SourceRange


Maintainer's Corner

For package maintainers and hackage trustees

Readme for noise

Readme for noise-0.0.1


Noise is a concise, friendly language for graphic design that translates directly to SVG 1.1. You can learn more about the language at its webpage.

This project is an implementation of Noise written in Haskell. It includes an interpreter and a library of modules that you can use to write your own interpreter.


First, install the Haskell Platform. Then:

git clone
cd noise
cabal install

Let's make sure it worked:

$ noise --help
Usage: noise [file]
  -h  --help  Print this help text.


noise reads Noise code from standard input and writes SVG to standard output:

echo ",10,10," | noise > circle.svg

It can also read from a file:

echo "shape.rectangle(0,0,10,10," > rectangle.noise
noise rectangle.noise > rectangle.svg

Use convert from the ImageMagick package to write other image formats:

echo ",10,10," | noise | convert -size 20x20 svg:- circle.png


I recommend using cabal-dev to maintain a sandboxed build environment. If you don't have it already:

cabal install cabal-dev

Then, in the project root:

cabal-dev install-deps --enable-tests
cabal-dev configure --enable-tests

After performing the above setup once, you can build and test noise like so:

cabal-dev build && cabal-dev test

For a more detailed and colorful test report, try this:

cabal-dev build && ./dist/build/test/test