All releases of minimac


Release Notes: 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.


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


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


Release Notes: 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.


Release Notes: 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.


Release Notes: Code was added to flush the output stream prior to writes to the error stream and diversion streams. Built-ins were added for substring replacement {replace}, and appending to an existing diversion {divert+}. {empty} was removed from the core and added to the sample extensions file.


Release Notes: The handling of whitespace after flow-control directives was cleaned up. Built-ins were added for conditional tail recursion {?repeat}, reading an environment variable {env}, conditional duplication {?dup}, and bit shifts {<<} {>>}. The parameter order of {cat} was changed. {execute} was removed. The 99bottles.mm sample code was added.


Release Notes: This is the first alpha release of minimac. The core functionality included in this release meets the author's current needs. Changes and additions will be made if flaws are found or users express specific requirements. Conditionals now expand arbitrary strings, instead of just named macros.


Release Notes: A bug in escape character handling was fixed.


Release Notes: Built-ins were added for case statements {case} and string equality {match?}.
A Java charting library for Swing, SWT, Android, and BlackBerry.