Projects / minimac

minimac

Minimac is a minimalist, general purpose text macro processor. Its simplicity should make it particularly well suited as a front end preprocessor for little language compilers. It is meant to be simpler to use than m4. It uses an explicit argument stack, and user functions are defined by concatenation (similar to the Forth language). Macro expansion is delayed to the last possible moment. The software is currently in alpha release.

Tags
Licenses
Operating Systems
Implementation

Short link

Rss Recent releases

Changes: This release fixes a bug which led to dictionary corruption when a user macro was redefined, adds an {undefine} built-in, and makes the {remove} built-in silently ignore a non-existent file.

  • Rrelease-mid
  •  10 Jun 2009 08:12
  • Rrelease-after

Changes: A portability bug that was preventing minimac from running properly on Slackware Unix was fixed.

  • Rrelease-mid
  •  09 Jun 2009 09:13
  • Rrelease-after

Changes: Deprecated code was removed from the {?>} built-in.

  • Rrelease-mid
  •  08 Jun 2009 08:08
  • Rrelease-after

Changes: As a major addition, a built-in was added for expanding an expression to the stack {?>}. In other words, output that is normally intended for stdout is instead collated in a buffer and pushed onto the stack. This serves as a primitive for user macros that format output. It also obviates the {bind} family of extension macros. The {match?} built-in was renamed to {same?}, so that the {match?} keyword is available for an eventual pattern matching built-in.

Changes: A stack underflow check was added to {cat}. Mnemonic synonyms were added for stack operators. The {spin} and {_swap} stack operators were added. Parameter binding operators were added.

51af5fc124d18f0080afb451e036b4f7_thumb

Project Spotlight

Task Coach

A friendly task manager.

0f13817b66b748f053a3fd3388f94bd5_thumb

Project Spotlight

Nearforums

Internet discussion forum software.