Zoem is a general-purpose macro/programming language that submits text to a two-stage transformation process. Macro expansion and interpretation is followed by application of customizable character filtering rules. Zoem supports inside-out evaluation, comprehensive IO, control operators, iteration, dictionary stacks, multidimensional data storage, arithmetic expressions, regular expressions, system commands, and more.
|Tags||Software Development Documentation Text Processing General Markup Macro Language|
Release Notes: The default search path was changed so that Aephea is automatically found if zoem and aephea are installed with the same prefix. The primitive set#3 can now splice into a variable, supporting simple line-based ascii-diagrams.
Release Notes: In interactive mode, zoem can utilize readline editing and history capabilities, if available. A new built-in macro seq#4 can be used as a simple type of for loop. Environments that are not closed at the end of processing are now reported in a diagnostic message.
Release Notes: The HTML document framework has been wrapped up and split off under the name Aephea (adaptable exo-skeleton for practical HTML extension and abstraction), and PUD (Portable UNIX Documentation) is shipped with Aephea. The zoem package now only provides resources and documentation for the macro/programming language zoem itself.
Release Notes: A bug causing crashes and stray zoem output on certain platforms has been fixed. This bug was present in previous releases as well, but many platforms were unaffected by it.
Release Notes: A bug in set#3 was removed, and a batch definition mode and a more legible way of appending to keys were added. Keys local to environments can now be defined using the same signature as when invoked. This release also continues the focus on retiring what few special case syntax still exists. The format#2 specification syntax has been reworked (in an incompatible way) into a standard and extensible key-value syntax. The format#2 implementation was redone and several new directives were added. XML/HTML syntactic sugar now stops introducing whitespace formatting when so instructed.