Changes since StrategoRelease053 Summary * Dynamic rules: see ScopedDynamicRewriteRules paper * Lots of improvements to the library (thanks Main.HedzerWestra and Main.MerijnDeJonge) * Improvement of installation robustness (e.g., not depending on defined path to sc; thanks Transform.JohnReppy) 2001-06-20 Eelco Visser * Release 0.5.4 2001-06-18 Eelco Visser * spec/front/frontend-test.r: updated tests, Undefined dynamic rules can also have conditions. 2001-06-17 Eelco Visser > * spec/front/normalize-spec.r: Added overriding dynamic rules that change the definition for the currently active key without introducing an entry in the local scope. This is needed to update rules defined in outer scopes. (Application: dead code elimination) 2001-06-17 Eelco Visser * spec/front/normalize-spec.r: Repaired bug in desugaring of "Undefined" dynamic rules. 2001-06-15 Eelco Visser * spec/syn/stratego.lx: Allow \begin{code} to start file. 2001-06-14 Eelco Visser * spec/front/normalize-spec.r: Dynamic rules that have Undefined as right-hand side will cause the invocation of the dynamic rule (on the specific lhs pattern) to fail. This is needed in order to shadow rules from outer scopes that might not be applicable. 2001-06-13 Eelco Visser * src/make_rules.in (CC): Declare as @CC@ instead of gcc. * spec/slib/spec/string-test.r, string.r: get-path extracts the path prefix from a command string. * spec/syn/pack-stratego.r: Deduce path for parse-mod from path for pack-stratego (from command-line option 0). 2001-06-13 Hedzer Westra * Added test for strcmp and such, and fixed string-gt 2001-06-13 Eelco Visser * spec/front/data/Makefile.am : Repaired EXTRA_DIST * spec/slib/spec/scoped-finite-map-test.r: Added tests for assert. * spec/slib/spec/scoped-finite-map.r: Assert now also works when without initialization of the table. * test/syntax/dynamic-rules-test.r: Added test of overriding behaviour of dynamic rules. 2001-06-11 Eelco Visser * spec/front/check-constructors.r: Rules and strategies are merged. * bootinstall * spec/syn/stratego.lx: Tokens {| and |} for delimiting dynamic rule scopes. * spec/lib/stratlib.r: Added binding by DynamicRules * spec/front/extract.r, spec/front/inline.r, spec/front/inlining.r, spec/front/needed-defs-test.r: main -> name of module * spec/sig/sugar.r: Signatures for dynamic rules constructors. * spec/front/frontend-test.r: Unit tests for desugaring of dynamic rules * spec/front/spec-to-sdefs.r, spec/front/use-def.r: Rules and strategies were merged. * spec/front/frontend.r: layout * spec/front/data/dynrules.r: Test for desugaring of dynamic rules 2001-06-10 Eelco Visser * spec/front/normalize-spec.r: Desugaring of dynamic rules. Rules and strategies were merged into one list. * test/syntax/dynamic-rules-test.r: Test for dynamic rule syntax * spec/slib/spec/env-traversal.r: Traversals involving one. 2001-06-10 Eelco Visser * spec/slib/src/tables.c: Made table access more robust; there is no need to create a table explicitly, it is always created when a table-put or table-get is done. * spec/slib/spec/tables-test.r: Tests for robustness of table operations 2001-06-09 Eelco Visser * spec/syn/stratego.grm: Liberalized syntax: rule and strategy definition can now be defined under both the rules and strategies keywords. In effect, rules and strategy definitions can be mixed in any order. 2001-06-07 Eelco Visser * spec/slib/spec/string.r: Repaired basename to correctly handle slashes in names. (Merijn de Jonge) * spec/slib/spec/string-test.r: Extra test for basename 2001-06-01 * spec/slib/spec/template-test.r: Defined main 2001-06-08 * spec/slib/spec/string.r: Changed string.r to use -1, which wasn't parsed by parse-mod when strcmp was defined. 2001-05-31 * Redocumented all library modules; add literate program wrapper and consistent naming of header. 2001-05-24 * configure.in: Incremented version number to 0.5.4beta