moved to plt/docs/release-notes
svn: r13207
This commit is contained in:
parent
77394b483c
commit
c95f144971
|
@ -1,450 +0,0 @@
|
|||
- added more coloring arguments to traces: #:scheme-colors?
|
||||
#:default-arrow-highlight-color, and #:default-arrow-color
|
||||
|
||||
- added the #:layout argument to traces
|
||||
|
||||
- added term-node-set-position!
|
||||
|
||||
- Added tracing to metafunctions (see current-traced-metafunctions)
|
||||
|
||||
- added caching-enabled? parameter (changed how set-cache-size!
|
||||
works)
|
||||
|
||||
v4.2
|
||||
|
||||
- added white-bracket-sizing to control how the brackets
|
||||
are typeset when rendering a metafunction.
|
||||
|
||||
- added render-* functions that make it easier to experiment
|
||||
with typesetting at the REPL.
|
||||
|
||||
- where clauses in metafunctions now are implicitly in
|
||||
`term's (they were not documented at all before)
|
||||
|
||||
v4.1 (this is the first version that was included in the PLT
|
||||
distribution. Before this, Redex was in PLaneT).
|
||||
|
||||
EXTENSIONS:
|
||||
|
||||
- added test-equal, test-pred, test-reduces, and test-results
|
||||
|
||||
- removed restriction on apply-reduction-relation*
|
||||
replaced it with additional work while matching
|
||||
non-terminals to remove the redundancy
|
||||
|
||||
- added `in-domain?'
|
||||
|
||||
CHANGES:
|
||||
|
||||
- define-metafunction and co. now use a different syntax.
|
||||
|
||||
- got rid of named holes. This means, eg, that (hole #f) now matches
|
||||
a two element list, not just the hole directly.
|
||||
|
||||
- zero occurrences of a hole when matching an `in-hole' now
|
||||
correctly fails.
|
||||
|
||||
- the `where' keyword in reduction-relation became `with' (and the
|
||||
arguments reversed order)
|
||||
|
||||
- renamed the `rib' struct to `bind' (and mismatch-rib =>
|
||||
mismatch-bind)
|
||||
|
||||
- merged the various traces functions into a single
|
||||
function that accepts keyword arguments.
|
||||
|
||||
- renamed the loc-wrapper struct to lw.
|
||||
|
||||
- language->ps and language->pict's listof-symbols is now
|
||||
optional and thus the language->ps's arguments changed
|
||||
order to make that work.
|
||||
|
||||
- renamed test-match to redex-match
|
||||
|
||||
- no long export mtch struct or bindings struct and
|
||||
test-match's result is not simplified.
|
||||
|
||||
- extend-reduction-relation now uses the names of the
|
||||
rules to replace existing rules (instead of just
|
||||
unioning the rules)
|
||||
|
||||
- in-hole used to substitute into named holes, but now it
|
||||
only substitutes into unnamed holes. Use in-named-hole
|
||||
on the right-hand side to do the substitution
|
||||
|
||||
- removed hole-here
|
||||
|
||||
BUG FIXES:
|
||||
|
||||
- fixed a (not easily noticed) bug in the way hole
|
||||
matching worked for named holes.
|
||||
|
||||
- extending a non-terminal that's been defined together
|
||||
with other non-terminals now works as expected.
|
||||
|
||||
- handling of non-terminals uses that have underscores in
|
||||
them now works properly (only showed up when using them
|
||||
in the definition of a langauge)
|
||||
|
||||
- an extended language can now define multiple non-terminals
|
||||
together
|
||||
|
||||
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
|
||||
below here were the versions of Redex that appeared in PLaneT
|
||||
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
|
||||
|
||||
("robby" "redex.plt" 4 4)
|
||||
|
||||
- undid some changes that broke backwards compatibility
|
||||
|
||||
("robby" "redex.plt" 4 3)
|
||||
|
||||
- added extend-reduction-relation
|
||||
- fixed a bug whereby reduction relations that reduced to
|
||||
false were always ignored
|
||||
|
||||
("robby" "redex.plt" 4 2)
|
||||
|
||||
- fixed a bug in the way `in-hole' inside
|
||||
an ellipsis on the right-hand side of a
|
||||
reduction rule.
|
||||
|
||||
("robby" "redex.plt" 4 1)
|
||||
|
||||
- improved stepper so that scrolling works when large
|
||||
terms are present.
|
||||
|
||||
("robby" "redex.plt" 4 0)
|
||||
|
||||
- changed conventions for subscripts. Now, non-terminals
|
||||
w/out subscripts bind in reduction rules (but they still
|
||||
do not bind in grammar definitions).
|
||||
|
||||
- wheres and side-conditions now bind as expected in
|
||||
reduction-rules
|
||||
|
||||
- fixed a bug in metafunction pict generation (parallel
|
||||
fix from 3.28)
|
||||
|
||||
- renamed horizontal-arrow-space to arrow-space.
|
||||
- renamed horizontal-label-space to label-space.
|
||||
|
||||
("robby" "redex.plt" 3 27)
|
||||
|
||||
- added horizontal-arrow-space, horizontal-label-space
|
||||
- number & variable now typeset in italics (to match the other non-terminals)
|
||||
- improved fresh variable generation
|
||||
- added `where' for bindings in metafunctions
|
||||
- added 'up-down mode for metafunction typesetting
|
||||
- added optional argument to reduction-relation->pict &
|
||||
reduction-relation->ps
|
||||
- PR 8957
|
||||
|
||||
("robby" "redex.plt" 3 26)
|
||||
|
||||
- fixed a bug in pict generation
|
||||
|
||||
("robby" "redex.plt" 3 25)
|
||||
|
||||
- added hole-here support for `term'
|
||||
|
||||
("robby" "redex.plt" 3 24)
|
||||
|
||||
- added curly-quotes-for-strings and current-text
|
||||
|
||||
("robby" "redex.plt" 3 23)
|
||||
|
||||
- fixed a bug that cause typesetting of grammars that
|
||||
defined hole as the first production of some
|
||||
non-terminal.
|
||||
|
||||
- added hide-hole pattern
|
||||
|
||||
("robby" "redex.plt" 3 22)
|
||||
|
||||
- ??
|
||||
|
||||
("robby" "redex.plt" 3 21)
|
||||
|
||||
- added `where' as a binding form in the individual
|
||||
clauses of a reduction-relation.
|
||||
|
||||
- typesetting:
|
||||
|
||||
- improved handling of nested term, quote,
|
||||
unquote, and unquote-splicing.
|
||||
|
||||
- fixed up in-named-hole and (hole x) to use subscripts.
|
||||
|
||||
- improved the docs for the loc wrappers to explain
|
||||
logical spacing.
|
||||
|
||||
- improved typesetting of languages built with
|
||||
extend-language. See extend-language-show-union.
|
||||
|
||||
- added set-arrow-pict!
|
||||
|
||||
("robby" "redex.plt" 3 20)
|
||||
|
||||
- improved the interface for rewriting aspects of the typesetting.
|
||||
|
||||
- added linebreaks, with-compound-rewriter, and with-atomic-rewriter
|
||||
|
||||
("robby" "redex.plt" 3 19)
|
||||
|
||||
- improved source locations for error messages when misusing ellipses, eg:
|
||||
(term-let ([(x ...) '(1 2)] [(y ...) '(1 2 3)]) (term ((x y) ...)))
|
||||
or similar things via reduction-relation, metafunctions, etc.
|
||||
|
||||
- fixed PR 8752: `name' patterns only show the name,
|
||||
leaving the thing defined to the where clause
|
||||
|
||||
("robby" "redex.plt" 3 18)
|
||||
|
||||
- fixed PRS relating to pict generation: 8749 8751 8750
|
||||
and a few other bugs along the way.
|
||||
|
||||
("robby" "redex.plt" 3 17)
|
||||
|
||||
- initial-char-width now controls both the stepper & traces
|
||||
|
||||
("robby" "redex.plt" 3 16)
|
||||
|
||||
- added define-multi-args-metafunction
|
||||
- finished first pass of the pict generation rewriting
|
||||
|
||||
("robby" "redex.plt" 3 15)
|
||||
|
||||
- fixed a bug in stepper/seed
|
||||
|
||||
("robby" "redex.plt" 3 14)
|
||||
|
||||
- fixed some silly mistakes in the packaging
|
||||
|
||||
("robby" "redex.plt" 3 13)
|
||||
|
||||
- added variable-not-otherwise-mentioned as a new pattern
|
||||
- added stepper/seed
|
||||
- added an optional pretty-printing argument to stepper.
|
||||
- improved the ps rendering of the arrows
|
||||
for --> -> => ==> ~> and ~~>
|
||||
- rewrote internals of pict rendering (hopefully no change
|
||||
yet, but there may be bugs introduced ...).
|
||||
|
||||
("robby" "redex.plt" 3 12)
|
||||
|
||||
- Added pict and .ps generation functions for
|
||||
reduction-relations, metafunctions, and grammars. These
|
||||
are still primitive; the most obvious missing feature is
|
||||
the inability (without secret knowledge) to replace the
|
||||
pink stuff.
|
||||
- fixed a bug in the way the stepper highlights
|
||||
differences in the presence of quote (by disabling the '
|
||||
shortcuts printing)
|
||||
|
||||
NOTE this version of redex requires not just any
|
||||
369.100, but one from 5/19 in the afternoon (or newer).
|
||||
|
||||
("robby" "redex.plt" 3 11)
|
||||
|
||||
- changed the order of the arguments in the new `fresh' clauses
|
||||
introduced in the last release.
|
||||
|
||||
("robby" "redex.plt" 3 10)
|
||||
|
||||
- fixed bugs in the way that ..._x patterns work (they
|
||||
didn't handle binding well).
|
||||
- fixed misc bugs in the stepper
|
||||
- added the ability to generate a sequence of fresh variables
|
||||
in a single rule
|
||||
|
||||
("robby" "redex.plt" 3 9)
|
||||
|
||||
- added side-condition specs to metafunctions
|
||||
- added test-reduces and test-reduces/multiple to schemeunit.ss
|
||||
- fixed a bug in the handling of _!_
|
||||
- improved the "found the same binder" error message to show
|
||||
the source locations of the two offending binders
|
||||
|
||||
("robby" "redex.plt" 3 8)
|
||||
|
||||
- fixed a bug in the way (hole #f) patterns matched.
|
||||
- fixed a bug in the initial height of the boxes in `traces'
|
||||
- added reduction->relation-names
|
||||
- added ability to step until a particular reduction (and
|
||||
the reduction labels) in the stepper.
|
||||
|
||||
("robby" "redex.plt" 3 7)
|
||||
|
||||
- improved syntax error message (PR 8576)
|
||||
- added difference highlighting for adjacent terms in the stepper
|
||||
|
||||
("robby" "redex.plt" 3 6)
|
||||
|
||||
- added stepper
|
||||
|
||||
("robby" "redex.plt" 3 5)
|
||||
|
||||
- bugfix (I think ... this version's changes seem to have been forgotten)
|
||||
|
||||
("robby" "redex.plt" 3 4)
|
||||
|
||||
- added term-node-children
|
||||
|
||||
("robby" "redex.plt" 3 3)
|
||||
|
||||
- added term-match and term-match/single
|
||||
- added variables-not-in
|
||||
- fixed a bug in metafunctions
|
||||
|
||||
("robby" "redex.plt" 3 2)
|
||||
|
||||
- added language-nts
|
||||
- added better error messages when using parts of the
|
||||
pattern language as ordinary things in the grammar.
|
||||
|
||||
("robby" "redex.plt" 3 1)
|
||||
|
||||
- adds the ability to have multi-colored terms, not just
|
||||
pink ones.
|
||||
|
||||
("robby" "redex.plt" 3 0)
|
||||
|
||||
This release changes the syntax of the reduction relations
|
||||
to make it more consistent and more in line with the way
|
||||
reduction relations are written in papers. This is the
|
||||
precise set of removals and additions:
|
||||
|
||||
- added extend-language
|
||||
- added reduction-rule & apply-reduction-relation
|
||||
- added union-reduction-relations
|
||||
- added define-language
|
||||
|
||||
- changed compatible-closure & context-closure so that the
|
||||
pattern argument is not quoted, but is just the pattern
|
||||
in the last argument.
|
||||
|
||||
- changed term-node-labels so that it can return #f (in
|
||||
the list) when a reduction doesn't have a label.
|
||||
|
||||
- removed language->predicate, compile-pattern,
|
||||
match-pattern (use test-match instead)
|
||||
|
||||
- removed reduction, reduction/name, reduction/context,
|
||||
reduction/context/name (use reduction-relation instead)
|
||||
|
||||
- removed red? (use reduction-relation? instead)
|
||||
|
||||
- removed reduce (use apply-reduction-relation instead)
|
||||
|
||||
- removed reduce-all (use apply-reduction-relation* insetad)
|
||||
|
||||
- removed reduce/tag-with-reduction (use
|
||||
apply-reduction-relation/tag-with-names instead)
|
||||
|
||||
- removed red-name, reduction->name, give-name
|
||||
|
||||
- removed language (use define-language instead)
|
||||
|
||||
- removed helper.ss
|
||||
|
||||
Other improvements:
|
||||
|
||||
- check syntax draws arrows for the non-terminals in a
|
||||
`language' now, both to the language and to the
|
||||
reduction rules.
|
||||
|
||||
("robby" "redex.plt" 2 6)
|
||||
|
||||
- added reduce-all and note about bad parsing performance
|
||||
issues.
|
||||
|
||||
- added `test-match' and note about how to debug redex
|
||||
programs to doc.txt
|
||||
|
||||
- added redex-specific 'check' functions for use with
|
||||
schemeunit.
|
||||
|
||||
- add `metafunction' for defining meta functions using the
|
||||
pattern matching notation used in reductions and grammars.
|
||||
|
||||
("robby" "redex.plt" 2 5)
|
||||
|
||||
- fixed bugs in compatible-closure & context-closure
|
||||
|
||||
("robby" "redex.plt" 2 4)
|
||||
|
||||
- reduced the amount of memory used for caching
|
||||
significantly (with some small speedup for
|
||||
a largeish reduction semantics test suite)
|
||||
|
||||
- added set-cache-size!
|
||||
|
||||
- added variable-prefix pattern
|
||||
|
||||
- added ..._<id> pattern that can be used to ensure matching
|
||||
lengths of repeated patterns.
|
||||
|
||||
- added _!_ subscripts (both in ... and regular) to ensure
|
||||
that the matched things are different (or have different
|
||||
lengths in the case of ..._!_ subscripts)
|
||||
|
||||
("robby" "redex.plt" 2 3)
|
||||
|
||||
- added the ability to traverse the graph generated by
|
||||
traces in order to decide if a term should be
|
||||
highlighted in red. See the traces/pred documentation
|
||||
for details.
|
||||
|
||||
- added term-node functions
|
||||
|
||||
- added red-name function
|
||||
|
||||
- removed make-plt.ss from archive
|
||||
|
||||
("robby" "redex.plt" 2 2)
|
||||
|
||||
- added a blurb, fixed a typo in the docs.
|
||||
|
||||
("robby" "redex.plt" 2 1)
|
||||
|
||||
- changed the way a contract is specified on the matcher
|
||||
to get a 30% speed up on the beginner test suite.
|
||||
Thanks, Matthew for spotting that!
|
||||
|
||||
("robby" "redex.plt" 2 0)
|
||||
|
||||
- fixed a bug in compatible-closure handling that could
|
||||
result in duplicate matches when there should only have
|
||||
been a single match.
|
||||
|
||||
- added labels to edges for reductions
|
||||
when shown in GUI. See docs for
|
||||
reduction/name
|
||||
|
||||
- small performance improvement to matcher
|
||||
(10-20% on non-trivial examples)
|
||||
|
||||
- added letrec.ss example (and improved some
|
||||
of the examples to use labels)
|
||||
|
||||
("robby" "redex.plt" 1 3)
|
||||
|
||||
- Fixed a bug in the the compatible closure function; otherwise the
|
||||
same as 1.1
|
||||
|
||||
("robby" "redex.plt" 1 2)
|
||||
|
||||
- Obsolete'd version. It used to be a first attempt at the 2.0
|
||||
revision, but now should be avoided.
|
||||
|
||||
Use 2.0 instead of this version.
|
||||
|
||||
("robby" "redex.plt" 1 1)
|
||||
|
||||
- fixed packaging error
|
||||
|
||||
("robby" "redex.plt" 1 0)
|
||||
|
||||
- initial release to PLaneT
|
||||
|
Loading…
Reference in New Issue
Block a user