---
name: "blatte"
section: "1p"
platform: "linux"
package: "blatte"
version: "0.9.4-2"
release: "Debian 3.0 (Woody)"
platforms: ["linux"]
url: "https://new.carta.tech/blatte"
---

# blatte(1p)

compile a Blatte program into Perl

## NAME

blatte - compile a Blatte program into Perl

## SYNOPSIS

```
  blatte [--sparse] file1.blt file2.blt ... fileN.blt
```

## DESCRIPTION

Converts the Blatte code in each given file to Perl, writing the result to a new file with a .pl extension.  Will not overwrite existing files.

Each file gets a short header that imports that Blatte and Blatte::Builtins modules and defines two functions, x and y.

In the normal mode, as each converted Blatte expression is written to the output file, the corresponding Perl code is passed as an argument to the x function (which, when called, simply prints its argument -- after flattening \[see *Blatte*(3)\]).

If **--sparse** is given, then only Blatte expressions beginning with a Blatte metacharacter ({, \\, and }, except that only the first two are used to begin expressions) are passed to x.  All text in between such expressions is passed as a single string to y (which, when called, also prints its argument, but this time without any need for flattening).

Each call to x in the output file is preceded by a Perl comment describing the Blatte source that produced the Perl translation that follows.

## SEE ALSO

*Blatte*(3), *Blatte::Builtins*(3), *Blatte::Compiler*(3).
