Commit Graph

43 Commits

Author SHA1 Message Date
Robby Findler
475822b44a fix a bug in a syntax-case keywords spec
closes PR 13237 (turns out not to be planet-specific)
2012-11-22 13:54:32 -06:00
Robby Findler
c6caf11323 Adjust online check syntax's trace replay code so that it:
- lets other events be handled based on how long it has been
  replaying the current trace (instead of based on the number of
  pieces in the trace that have been seen)

- breaks up the syncheck:add-rename-menu pieces of the trace to
  be more granular (to make the previous point work better)

This should make DrRacket more responsive when the trace is being
replayed
2012-10-26 21:49:45 -05:00
Robby Findler
a4b79ccf66 adjust Check Syntax so that it tries to point to the
raw-module-path inside of a phaseless-spec (see
the #%require docs for the description of these).
Also, Rackety

in conjunction with commit 9047427 (and an earlier
commit in those files/dirs), this commit:
 closes PR 7815
 closes PR 10455
 closes PR 10788
2012-10-01 10:47:23 -05:00
Robby Findler
ce8d8eb763 fix the way check syntax traverses #%require expressions that it sees
(the way things currently stand, check syntax needs more information
 from the fully expanded form, but at least now it has a better chance
 to actually use that information, if it were there ...)

related to PR 7815
related to PR 10455
related to PR 10788
2012-09-29 22:09:02 -05:00
Robby Findler
21e0d9e031 make check syntax traverse (module* ...) expressions
closes PR 13095
2012-09-19 06:48:09 -05:00
Robby Findler
23aa31fc6f adjut check syntax so that it pays attention only
to syntax-original? identifiers

It used to pay attention to non-original identifiers if they
were in the disappeared-use or disappeared-binding
properties, but now that the 'syntax' macro is fixed
(commit f28e8a0) it can ignore all non-original identifiers
2012-08-14 17:49:52 -05:00
Robby Findler
d34490d990 show docs for syntax-quoted identifiers
(when there are docs to show)
2012-08-14 16:20:48 -05:00
Robby Findler
0c6734f782 Add the contents of the "blue boxes" in the docs to the upper-right
corner of the definitions window, based on the information that check
syntax computes

This commit contains two separate changes to make this work:

  - adding a new renderer, based on the text renderer, that
    pulls out the contents of the blue boxes and saves them
    in the doc/ directories (specifically in the files named
    contract-blueboxes.rktd)

  - extend check syntax to use and display the information
    build by the new renderer
2012-08-12 08:41:46 -05:00
Robby Findler
1a619bd047 add tooltips at the start and end of arrows indicating how many references
there are and how many definition sites there are (in check syntax)

also: Rackety
2012-07-30 21:46:22 -05:00
Robby Findler
ec41d86fef clean up the way original objects are being handled in check syntax
Specifically, move the syntax-original? checks to the point
where objects are inserted into the tables (it seemed to mostly
be happening there already, but now remove the checks on the
references)
2012-07-30 21:46:22 -05:00
Robby Findler
a66c735b82 removed the check syntax mode support 2012-07-17 13:07:41 -05:00
Robby Findler
3463f4233e adjust the contract obligation aspect of check syntax
so that it uses tooltips instead of the modes

(so hopefully now people will actually see it ...)
2012-07-17 13:07:41 -05:00
Robby Findler
160eef8366 added a tooltip for set!'d variables 2012-07-17 13:07:41 -05:00
Robby Findler
bf95ee1052 Adjust datalog to cooperate with check syntax a little bit more.
Specifically:
 - make predicate symbols and variables be original (and,
   in the former case, have srclocs)
 - remove the originality in the quoted syntax constants
   that the expansion introduces

I think there is probably something better that should be done
with those introduced syntax constants, possibly relacing
them with #f, or possibly replacing them with source location
lists, but I'm not sure how they are used, so I've just left
them in there.

(Also, very minor Rackety in check syntax)
2012-06-01 04:55:04 -05:00
Eli Barzilay
c007c345f9 A bunch of more typos like the ones in David's commit. 2012-02-21 14:21:43 -05:00
Robby Findler
2ed8023b36 minor refactoring 2011-12-12 14:45:27 -06:00
Robby Findler
0429471cf8 add mouse over status for free variables (only relevant for top-level languages) 2011-11-12 22:13:31 -06:00
Robby Findler
90304687f1 improve the strategy for check syntax's tail arrow information collection
In particular, instead of trying to collect all of the arrows and do some kind
of a smart transitive closure (that tries to avoid adding links that would "skip"
expressions but doesn't always manage it), the new code tries instead to build
the right links directly while traversing the fully expanded expression

This also seems to have been a minor performance improvement. When running the
information collection phase of check syntax (ie, not counting the time for
expansion) on a 1.8 GHz core i7, for collects/framework/private/text.rkt,
the times went from:

cpu time: 7347 real time: 7413 gc time: 211
cpu time: 7328 real time: 7393 gc time: 239
cpu time: 7356 real time: 7418 gc time: 240

to:

cpu time: 7562 real time: 7632 gc time: 265
cpu time: 7555 real time: 7618 gc time: 269
cpu time: 7552 real time: 7617 gc time: 262

closes PR 11835

do not include in 5.2
2011-10-10 14:18:01 -05:00
Robby Findler
0baa32bcf8 fix the way that the set of identifiers to rename is calculated so that
macros that do strange things like the one below are treated better

(define-syntax-rule (m q)
  (begin (lambda (q) q)
         (define q 1)))
(m x)
x
2011-09-26 13:00:23 -05:00
Robby Findler
a553cd7a4b be more agressive about setting the current directory during check syntax
also, minor Rackety
2011-09-23 16:37:17 -05:00
Robby Findler
469bc6ec00 change the online check syntax so it doesn't require any preferences to be
set up in the separate place
2011-09-22 10:51:46 -05:00
Robby Findler
d6f54435b7 adjust the interaction between online check syntax and the documentation
system to guarantee that killing online check syntax doesn't wedge the docs
information lookup process
2011-09-21 22:53:02 -05:00
Robby Findler
e2f1611ab4 adjusted the color for 'is-documented' bindings in online check syntax to be
green so it doesn't look anythign close to how the "yellow" error messages
look
2011-09-21 22:52:59 -05:00
Robby Findler
d654d3e09b add the place creation memory use to the memory-log test
(this required rearranging a bunch of local-member-names)
2011-09-20 17:15:02 -05:00
Robby Findler
621109a40a adjust check syntax to use the new capability in free-identifier=? 2011-09-13 14:56:32 -05:00
Robby Findler
b43250a448 remove unnecessary thread creation & remove commented out code 2011-09-12 10:49:16 -05:00
Robby Findler
cd1c96d596 adjust check syntax to work with the new begin-for-syntax 2011-09-10 22:10:59 -05:00
Matthew Flatt
a274a7fd72 partially fix Check Syntax for `begin-for-syntax' 2011-09-08 19:12:46 -06:00
Casey Klein
72059c908b Fixes check syntax bug 2011-08-15 17:50:11 -05:00
Robby Findler
00d3f72f21 fix up a few bugs, improve the docs, and start a test suite for the
new check syntax direct-to-traversal api
2011-08-14 14:32:45 -05:00
Robby Findler
71c6483f4f trace the language-position require(s) specially
so as not to turn them red when there is no use
of something exported by them in the program
  closes PR 12100
2011-08-10 19:12:04 -05:00
Robby Findler
b972a0940d Added online expansion and compilation of files
being edited in DrRacket (via places)

Added an API to let tools have access to that
  information (and compute more stuff)

Used that to make an online version of Check Syntax
  which led to a separately callable Check Syntax API.
2011-08-02 16:28:16 -05:00
Robby Findler
45a635339e refactored to make testing check syntax renaming possible
made sure to remove duplicates from the list before doing renaming
  closes PR 11659
2011-01-21 22:27:18 -06:00
Robby Findler
3a506e5acb check syntax: sort the identifiers (but this time without a bug...)
closes PR 11494
2010-12-04 18:40:47 -06:00
Robby Findler
d4857c4420 adjusted check syntax so that it does renaming better.
Specifically, it finds all variables that match the one being
renamed in the fully expanded program, as well as all variables
that have the same source locations of any of those (etc).
2010-12-02 10:40:43 -06:00
Robby Findler
6c25210a6b refactored check syntax in preparation to fix the problem with binding identifiers being duplicated by macros 2010-11-30 15:47:40 -06:00
Robby Findler
ca930a8e30 removed some bogus code 2010-10-04 12:50:18 -05:00
Eli Barzilay
606b7f60dc Lots of "~e" to "~.s" changes. 2010-08-25 17:17:01 -04:00
Robby Findler
7352d86f1f improved check syntax's jump-to-definition so it scrolls to a more natural place 2010-08-07 14:35:04 -05:00
Robby Findler
e7bd94f2d2 adjusted check syntax to record the right-hand side of binding forms (when they are there) 2010-08-07 14:35:03 -05:00
Robby Findler
5a5da11314 added in unioning and a bit more coloring; checking in to prepare for some changes to the original check syntax (to support contract obligations better) 2010-08-07 14:35:02 -05:00
Robby Findler
b72a59d55c broke things up a little bit more and started in on the new contract traversal 2010-08-07 14:35:02 -05:00
Robby Findler
9b01650e83 broke up check syntax into multiple files 2010-08-07 14:35:02 -05:00