Split images/icons/misc into images/icons/symbol and images/icons/misc
Updated tests
Fixed Gtk assertion failure in Macro Stepper (came from "about" dialog being created before the stepper window was shown; fixed by creating it on demand)
Changed Stepper similarly (though there was no assertion failure)
Put a quote in the Macro Stepper logo
Portable recycle-icon
Removed recycle unicode from the docs (was causing PDF build to fail)
Internal API fixes
Please merge into release
Added lambda icon, foot icon, search forward/back icons
Doc fixes
Stepper: icons on buttons, logo and about dialog
Macro stepper: icons on buttons, logo and about dialog
Please merge into release
Macros and other tools that need syntax privilege used
`(current-code-inspector)' at the module top-level to try to
capture the right code inspector at load time. It's more
consistent to instead use the enclosing module's declaration-time
inspector, and `var-ref->mod-decl-insp' provides that. The
new function works only on references to anonymous variables,
which limits access to the inspector.
The real function name is longer, of course.
discovered quite a number of strange old errors. Also fixed an
error on setting current-directory when the tab has no directory,
no infrastructure for testing this automatically.
Requires are now handled correctly, except that required bindings aren't treated
as top-level (that is, their reductions are skipped). Should be an easy fix...
in lazy/lazy.rkt
- add 'lazy-op stepper-syntax-property to op in lazy #%app
in stepper/private/annotate.rkt
- in varref-abstraction, check for 'lazy-op operator for toplevel vars, and use
varref-break-wrap if property = #t
remove stepper/private/lazy-highlighting.rkt
in stepper/private/macro-unwind.rkt:
- in fall-through, add lazy-proc to lazy #%app special case
in stepper/private/model.rkt
- in send-step, dont use highlight-table, just match top called fn in mark-list
instead
in tests/stepper/
- add lazy stepper tests for filter and fold
in stepper/stepper-tool.rkt
- in simple-module-based-language-convert-value, add print and trad-write case
in stepper/private/macro-unwind.rkt
- in fall-through, add to procedure-extract-target case
in drracket/tool-lib.rkt
- in contract for drracket:language:simple-settings-printing-style, add
'trad-write
in stepper/private/macro-unwind.rkt
- in fall-through, add special #%app case for force
in stepper/private/reconstruct.rkt
- in recon-inner, in called app case, combine force case with other lazy fns
in tests/stepper/
- add test for lazy cond unwinding problem
- in recon-inner, in called app case
- add other force fns to force case (!!, !list, !!list)
- add other list fns
(list?, length, list-ref, etc)
in stepper/private/lazy-highlighting.rkt
- add various list fns (list?, length, list-ref, etc)
in stepper/private/macro-unwind.rkt
- in unwind-cond, disable check of user-source and user-position
in tests/stepper/
- add test for various list fns
- modify cond for stepper
- add support for multiple values in stepper
- add inspector to multiple-values struct
- hide split-values call in ~define-values
in tests/stepper/
- add tests for cond
in stepper/private/annotate.rkt
- in annotate/top-level, allow arbitrary top-level terms
(no error in else case), otherwise exprs like let throws error
in stepper/private/
reconstruct.rkt
lazy-highlighting.rkt
- add support for eq? eqv? equal? lazy fns
in stepper/private/marks.rkt
- in mark-binding-value, add exception handler to catch undefined vars, so
display-mark in break works with recursive fns
in /tests/stepper/automatic-tests.rkt
through-tests.rkt
- add inf list example from icfp paper
in stepper/private/model.rkt
- refactor send-step to use cond instead of unless
- in send-step, when highlight-stack = null and last-rhs != null (and lhs !=
last-rhs), send a step with lhs = last-rhs (previously skipped whenever
highlight-stack = null)
- basic filter example wasnt showing result without this
- in icfp inf list example, this shows some intermediate forcing states
- all other existing tests passed
in macro-unwind.rkt:
- in unwind-mz-let, last line, ",label" should just be "label" (no unquote)
in reconstruct.rkt
- in reconstruct-completed-define, last line, arg to attach-info should be a
quasisyntax (#`), not syntax (#')
- 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