8 * Both the exec() and the process() methods accept
9 arguments in their calls that can be referenced with
10 dollar-prefixed arguments as usual.
15 * The %% keyword returns the full extended hash.
16 * Fixed processing of file templates returning 0.
17 * A new function template `dump', to dump an expression
19 * Fixed a bug in processing ARTEMUS_STR.
24 * New milestone release. The Artemus language has been
25 completely rewritten to be a LISP-like, compiled
26 machine. No backward compatibility is provided (other
27 than including the old 4.x module in the distribution).
28 The new 5.x language is faster, more flexible, less
29 cumbersome (for example, there's no need for escaping
30 inner blocks that should execute only conditionally)
31 and include support for translateable strings.
36 * The `foreach' constructor now includes an optional
37 4th argument, the _header_, that will be appended
38 to the output in case it's different from the
39 previous iteration. This code block is expected to
40 contain dollar-prefixed arguments.
41 * New template function `item', to return an item
42 from a colon-separated list given its subscript.
43 * Fix `case' comparisons when the variable contains
45 * Fix loader_func() to correctly process empty
47 * Unless a very grave bug or vulnerabity is found,
48 this will be the last 4.x release; next release
49 will jump to the 5.x branch. Please take note that
50 this new branch is intentionally incompatible
51 with current one. Anyway, the Artemus4.pm module
52 and associated tools are planned to be distributed
53 with the 5.x series for a very long time.
58 * New template function `sort'.
59 * New template function `reverse'.
60 * Templates can be loaded from external sources by
61 using the new `loader_func' argument to new().
62 * The Perl module Artemus is now an alias for the
63 Artemus4 module, as a way to smooth the future
64 transition to version 5. No changes need to be
70 * New template function `case'.
71 * New template function `env', to get values from the
73 * New template function `size', to return the number
74 of elements in a colon-separated list.
75 * New template function `seq', to generate a sequence
76 between two numbers as a colon-separated list.
77 * Improved debugging information.
82 * New template function `foreach', to implement loops.
83 * New template function `set', for assigning a value to
85 * New template arithmethic functions `add' and `sub'.
86 * New template comparison functions `gt', `lt' and `eq'.
87 * New template logical functions `and', `or' and `not'.
88 * New template function `random'.
89 * Comments can now be included with the {% } markup (they
90 are deleted from the final output).
91 * Old cruft has been deleted from the script (ftp, makefile
92 and sitemap generation).
93 * Template parameters are always expanded (instead of short-
94 circuiting when one is not found).
95 * Artemus markup can be escaped to allow templates being used
96 from another ones with being executed first.