- in recon-inner, called app case, add first fn to list of special lazy fns
- in recon-value, add handling of running promises not found by
recon-inner search
- add optional so-far param to recon-value
- add unknown-promises-table and add case in recon-value to handle
in stepper/private/lazy-highlighting.rkt
- add (first,0) pair
in stepper/private/model.rkt
- modify lazy fn "skipping" (from lazy-highlighting.rkt) to use the skips
only when last-rhs-exp = null; o.w. skipping is handled solely by
examining last-rhs-exp
in tests/stepper/
- add take example from icfp paper
- add tests for unknown promises
- in recon-value, add cases to handle list and cons
- in recon-inner, in app called case, add case to handle lazy list fns
that contain unannotated !'s (ie cadr, cdddr, second, third, etc)
in stepper/private/model.rkt
- add highlight-stack
- in send-step, add various skip conditions when lhs = ellipses
add file stepper/private/lazy-highlighting.rkt
in tests/stepper/through-tests.rkt
tests/stepper/automatic-tests.rkt
- add tests for list and cons fns
in stepper/private/model.rkt
- add debugging outputs
- reformat code
in stepper/private/macro-unwind.rkt:
- in fall-through
- add case for lazy racket app
- add case for procedure-extract-target
- in unwind, change recur procedure for fn hints to unwind
(was recur-on-pieces)
in racket/private/promise.rkt
- add unwind fn as stepper-hint syntax property
in stepper/private/reconstruct.rkt
- add constructor application case back
- in recon-inner
- in app called case, dont show ellipses for force
- initialize partially-eval-promise table
- reformat answer code
- add caching of running promises
- in recon-value, add reconstructing of partially evaluated promises
in stepper-private/annotate.rkt
- in annotate/module-top-level, add lazy racket top level case - to hide top
level forcer
in lazy/lazy.rkt
- use hidden-~ and hidden-! instead of ~ and !
- in !*app:
- add stepper-skipto property to skip (if lazy-proc? ...)
- for lazy-proc, extract proc from lazy-proc struct before applying
- redefine ~define to use inferred name, so stepper can recon properly
It was very hard to figure out why � is invalid. Both the XML 1.0 and 1.1 specs say that a CharRef can be '&#' [0-9]+ ';' (sec 4.1), but there is a note on the side that it must also be a valid Char. The Char definition (sec 2.2) then lays out which characters are valid. (The 1.0 and 1.1 specs disagree though.) I've gone with the 1.1 definition.
I did not update the rest of the reader to disallow those characters in pcdata segments. If this hurts you or you morally disagree, submit another PR, please.
- improved the drawing speed in mrlib's graph pasteboard
by caching the background arrows (optionally; only turned
on for the module browser. in redex, this probably won't
speed anything up so it isn't used)
- added a search feature to the module graph to help find
dependencies; type in string and some of the graph changes
color