Commit Graph

1804 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
5334a847b1 DrDr repairs.
original commit: 4c56a94eb11b194060b43d39e5e444454ab41acf
2011-08-16 08:14:39 -04:00
Sam Tobin-Hochstadt
0e17e02751 Refactor unit tests to handle tests that need base-special-env separately.
original commit: c54fc6d6d79cec39fa7236fd314842f809feab73
2011-08-15 21:39:31 -04:00
Sam Tobin-Hochstadt
ec40b5be8f Refactor base-special-env to run at phase 0.
Unfortunately, it can no longer be required normally, and forces changes to test suites.

original commit: 8ecc2a4da4c995a83ddc630ab274859f47597fc6
2011-08-15 21:39:31 -04:00
Sam Tobin-Hochstadt
ab46be4998 Better error message when id is unbound in `make-env'.
original commit: 11167aa21428833fe2dbbb33301d9c7e43544e8b
2011-08-15 21:39:31 -04:00
Sam Tobin-Hochstadt
14d059022a Fix type of file->bytes-lines
original commit: 13ef3849fcee7fa8a7bd5ecf988ed0bb4fbcf84a
2011-08-15 21:39:30 -04:00
Sam Tobin-Hochstadt
2ae93408c1 re-enable type for port->bytes-lines
original commit: b25aae230be253861800c483aa0b7f2ffbb1315c
2011-08-15 21:39:30 -04:00
Vincent St-Amour
5e92d965a6 Remove redundant logging message.
original commit: 8dba93646a0fb6b2ff8ffe230342e5276a0d16f6
2011-08-15 12:19:54 -04:00
Vincent St-Amour
086e0e7ccc Fix arity raising for letrec.
original commit: 2a80582ed97e93b3c85ae8fbc21bfc7eeab05947
2011-08-15 12:19:54 -04:00
Vincent St-Amour
2bf7ce50ed Formatting.
original commit: 63b5747018f5c8cfa585016346e7a7b5dbabd38e
2011-08-15 12:19:54 -04:00
Vincent St-Amour
a05162c6df Have arity raising play nice with Check Syntax.
original commit: becaac8c1841638350dec7e59f92efe37885aa7d
2011-08-15 12:19:54 -04:00
Vincent St-Amour
4ec5413e5f Fix visibility of arity-raised bindings.
original commit: b536445cdee2ad256284a780d4b1187ac3322dd9
2011-08-15 12:19:54 -04:00
Sam Tobin-Hochstadt
fb381b7dfd comment out type that produces strange duplicate error message.
original commit: fdcb22ea32b700c0c56895b86dc5330191d7f065
2011-08-14 13:40:42 -04:00
Sam Tobin-Hochstadt
06367272b6 Fix initial type environment for new-style keyword functions.
original commit: 54c044c36a5738a862379e4f10d0b9453c8e27b0
2011-08-14 13:40:42 -04:00
Sam Tobin-Hochstadt
ff7de23488 Fix typechecking of `#%variable-reference'
original commit: 2d094db270cf25f1b301b062a393b8f44b75c63c
2011-08-14 13:40:42 -04:00
Sam Tobin-Hochstadt
20c54979a9 Use syntax-track-origin more pervasively to get the right arrows in check syntax.
original commit: d948626fac529ba8325ffe712f192edb4e5329d5
2011-08-12 11:09:11 -04:00
Vincent St-Amour
bc5339d19c Add disappeared uses to have optimized code play nice with check-syntax.
original commit: 281e1003e3ef60892188e8b4f5313f8fdd9e4c72
2011-08-11 18:25:46 -04:00
Vincent St-Amour
9f8918b441 Refactoring.
original commit: 271f696c5846c3e026507d5e47c648a23e5ad2ed
2011-08-11 18:25:46 -04:00
Vincent St-Amour
5d94df5648 Rename a parameter to better reflect what it's for.
original commit: cef410f5e2e6e5728cf1bc8769607f637365683f
2011-08-11 18:25:46 -04:00
Robby Findler
f38df9c69b change the #:get-lock-file argument of call-with-file-lock/timeout to #:lock-file
original commit: 997813680db107a75dae889f73bc3da5ce00806f
2011-08-11 09:29:31 -05:00
Asumu Takikawa
2673b89af3 Added a match expander for objects in unstable.
original commit: d12b617292c284c4a4c18cf926b198487a8c070a
2011-08-10 20:37:21 -04:00
Vincent St-Amour
024e04015c More TR test failures more easily detectable.
original commit: 8bcb7f26362857fad84b9dec9cf30707520d97d2
2011-08-10 15:45:54 -04:00
Tony Garnock-Jones
8d95d8065c Correct type on typed variant of module->namespace.
original commit: 54285e2f922537a3f10d24ee99c4381666bf9a90
2011-08-04 13:34:14 -04:00
Vincent St-Amour
9c848fe5a5 Break long lines.
original commit: 5d4e5ed39352b4a1e87c5ebd9c796cc5953064a5
2011-08-03 17:39:16 -04:00
Vincent St-Amour
ffcc7e9f92 Improve error message for calls to 'sort' when inference fails.
original commit: b124d68f402ce99ddec58482be40ce279f3f4a04
2011-08-03 17:39:15 -04:00
Vincent St-Amour
ada104f62e Abstract printing of function types.
original commit: 1a661256f8c631a576fcac9100cb54c5400dd566
2011-08-03 17:39:14 -04:00
Robby Findler
4c89455512 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.

original commit: b972a0940d04f4ff2c659d494805a7d34358da17
2011-08-02 16:28:16 -05:00
Vincent St-Amour
35fe79f643 Get rid of pseudo-syntax.
original commit: 5f4c577d5b9d8d3e846555be01a1ef1dfadc4e56
2011-07-29 18:31:10 -04:00
Vincent St-Amour
0c964fcda8 Have log entries carry pseudo-syntax instead of syntax.
Unlike syntax, pseudo-syntax is serializable, and it only carries the
information that Performance Report needs. Serializability is
necessary to be able to expand the program inside a sandbox and get
log entries out.

original commit: ea1ae29e0f5b780355918622fac3cd4802813d19
2011-07-29 18:23:14 -04:00
Vincent St-Amour
ed0cd8f898 Add types for #%kernel's memq, memv and member.
original commit: 0951ad5b1bd494d63dd9c7eb372dff043de8bb6c
2011-07-29 13:43:11 -04:00
Vincent St-Amour
fcfa476f15 Add a type for #%kernel's reverse.
Present in the expansion of for/list.

original commit: 88a3d93e9e93118a57a25c5da0b392763552a3bd
2011-07-29 12:54:29 -04:00
Vincent St-Amour
c3a9c07979 Add for*/sum: and for*/product: to TR.
These currently don't play nice with inference, so they only work in
limited cases.

original commit: 5b22dfb6b0d329af5c2cd78a1652431de29fe739
2011-07-29 12:54:29 -04:00
Vincent St-Amour
fea766dfbb Add for/sum: and for/product: to TR.
original commit: 6a8011854be3c67dc9fe0f3b1e7ba119a28500bd
2011-07-29 12:54:29 -04:00
Vincent St-Amour
aae4f8c4b5 Fix for empty case-lambdas.
original commit: c085f51aa27313db1695c76af7171e80f68614c3
2011-07-22 17:24:14 -04:00
Vincent St-Amour
3a3a52fd02 Display ellipses even if the :print-type message was already displayed.
original commit: df0ae80a7f69d6ebf4224aff33abf6d662daa0fd
2011-07-22 17:07:49 -04:00
Vincent St-Amour
42e4fe3bb3 Change :print-type message.
original commit: 93787f621596a2917c2abeb187b6923184825139
2011-07-22 17:05:03 -04:00
Vincent St-Amour
ccda7b859c Only suggest using :print-type once per REPL session.
original commit: dcff8854fb495542bed73a9b381bb0867bbfe683
2011-07-22 17:03:43 -04:00
Vincent St-Amour
66c483ea60 Add a heuristic for case-lambda type simplification.
Makes simplification _much_ faster for types that have a single most
general case. That includes most numeric functions.

original commit: 3ba93cb165e33d5e63eca655cd29b2298f6c73a4
2011-07-22 16:55:21 -04:00
Vincent St-Amour
3dd9d251c2 Remove stale comment.
original commit: 86490943a328e56b511cfec126497a8cec81e2d1
2011-07-22 16:46:10 -04:00
Vincent St-Amour
c6d6b97247 Omit a redundant pass.
original commit: 02b76d774134311a27dfbe85a97053118b590ccc
2011-07-22 16:40:11 -04:00
Vincent St-Amour
eabc78e169 Flip order of type simplification passes.
original commit: 84931448b57f4c044e8c40a46f85c024de6262e7
2011-07-22 16:38:15 -04:00
Vincent St-Amour
b9d59b8fb9 Refactoring.
original commit: 5b6d0ae167bd233973441c83b759470d5d31c1a8
2011-07-22 16:22:36 -04:00
Vincent St-Amour
e82fd29852 Typecheck pregexp literals correctly.
original commit: f7be12d313da40e4750d30f39826936ef5f455cd
2011-07-22 16:22:36 -04:00
Vincent St-Amour
9d88499488 Use set coverage for union printing.
original commit: 27cd6aca6f5268a2ea35230ab964629dd63ecd73
2011-07-22 16:22:36 -04:00
Vincent St-Amour
085282802d Clean up printing of unions that involve numeric types.
original commit: 10e79ba2ecfcfc770233901e5b8ec85de6f724a3
2011-07-22 11:41:27 -04:00
Vincent St-Amour
a8845e3dcb Expose more of the TR opt logging.
original commit: 30146b7b8c7a4bde11f5d356f6be9cbc5d46377a
2011-07-21 17:06:03 -04:00
Vincent St-Amour
5155f0310c Clean up.
original commit: 73140544ce9a5195b032a4c81536ed76788208ee
2011-07-21 17:06:03 -04:00
Vincent St-Amour
a212f3419e Add a lower-level interface to unstable/logging.
original commit: b068e4a53b195e182c2e75094d6f1aa83015aa34
2011-07-21 17:06:03 -04:00
Vincent St-Amour
1f647b2e50 Remove stale comment.
original commit: fe5804884441d359a0d1217233f13e1cac87c453
2011-07-21 17:06:03 -04:00
Vincent St-Amour
4f8a856630 Handle desired types being outside of the function's range.
original commit: fae966146fbb6a40973d22b88fa6e480db6cde41
2011-07-21 17:06:03 -04:00
Vincent St-Amour
4d9c5c6cb9 Moved handling of empty pruned case-lambdas.
original commit: 59027c6b4019bd648eddad3b994e95a395061daa
2011-07-21 17:06:03 -04:00
Vincent St-Amour
e5ba187ea1 Add a function to query how to get a given return type from a function.
original commit: c0d0211ebbf209b7b17aaa54f48c13ca65eab345
2011-07-21 17:06:03 -04:00
Vincent St-Amour
18a8bdbca5 Fix :print-type to use tc-setup.
original commit: 51b98138d5f15ec31bbca0f2e9d5640046ce19d8
2011-07-21 17:06:03 -04:00
Vincent St-Amour
c877e22a1b Document how to start a TR REPL from the command line.
original commit: a71db7c15cd32222cb123024fc2af2fca43c9e74
2011-07-21 17:06:03 -04:00
Vincent St-Amour
cdcc1f44ed Refactoring.
original commit: 4735ad35232c720fa259b5f99d0ca629c997c5b7
2011-07-21 17:06:03 -04:00
Vincent St-Amour
9fdfbb934d Add a function to print whole types.
With this, it's possible to get more information than the simplified
types shown at the REPL. The types are as unwieldy as ever, but you
have to ask for them explicitly.

This is not an adequate long-term solution, and will be replaced by a
"Type Explorer" tool.

original commit: 70e1d63bed2ac85313d048cc9c359ae43330a7e3
2011-07-21 17:06:02 -04:00
Vincent St-Amour
e0786acac3 Don't print full function intersection types at the REPL, if possible.
original commit: 1a66f60eb4090e66ced5fc1ceddf401c9302560d
2011-07-21 17:06:02 -04:00
Sam Tobin-Hochstadt
670dc600ab Fix types of kernel struct constructors to include parent fields.
Merge to 5.1.2.

original commit: 7a763a2da89a1432285c06cdf9d112d04b29c762
2011-07-20 15:19:53 -04:00
Sam Tobin-Hochstadt
19249700c5 Conditionalize use of contract.
original commit: 8a608ed84011cdfeca34a827adfa993896f77b2d
2011-07-19 16:47:13 -04:00
Eric Dobson
5d1a3e7a4a Switched name field in struct type to identifier. Closes PR 11728.
Closes PR 11998. Closes PR11859.

original commit: e07ce478afc1806d6805f57f96006bcb0d25668e
2011-07-19 16:47:13 -04:00
Eric Dobson
0def9642c2 Fixed TR contracts to be more/less strict
original commit: 81b1178a1749e06f097c270563e253accb727246
2011-07-19 16:47:13 -04:00
Eric Dobson
703eac8bd5 Fixed types for path operations. Closes PR12057.
original commit: a7f0f7591d17558ed17644fadb89ad01216fd77a
2011-07-19 16:47:13 -04:00
Vincent St-Amour
ff9fa5fbfd Fix test to not be dependent on floating-point printing.
original commit: 419398ce1a1662cd6810bd5a100e65367e8855f8
2011-07-19 15:19:17 -04:00
Vincent St-Amour
e89475504d Remove redundant precision-loss messages.
original commit: 29882d8fa1bfc3bda8d57f8fb77d3a14ba8f9774
2011-07-19 15:19:17 -04:00
Sam Tobin-Hochstadt
7f1a5a59ab Fix Typed Racket handling of exception handling with multiple return values.
original commit: 42b79dd48980612e459236ada0f3027f87bced76
2011-07-18 17:42:28 -04:00
Sam Tobin-Hochstadt
0a47887ef3 Strengthen contracts to require syntax lists.
original commit: 23c47728c5e8db99da907312cc0ea466d02a3383
2011-07-18 17:41:17 -04:00
Sam Tobin-Hochstadt
cfbd2df41c Fix internal error message.
original commit: 25cdd87405e72bd2468d97f264fb8e3759aefe83
2011-07-18 17:38:40 -04:00
Vincent St-Amour
838c70ac6a Change a TR doc example to take two arguments.
Otherwise, the docs don't have any examples for the syntax of
multi-argument functions that doesn't involve polydots.

original commit: 4c5bb1ddaf68ea8982d4ea635f7b20563af371b0
2011-07-18 11:53:39 -04:00
Vincent St-Amour
c6320897e7 Add test for missed opts in multi-file programs.
original commit: 5d4d9f2636a408370efd415b05cf3b9a54b2dd5e
2011-07-15 15:04:58 -04:00
Vincent St-Amour
6b9f7dca85 Document Performance Report.
original commit: f632aa52dd083b649ad019e3728b6f1d9ee08bf6
2011-07-15 15:04:58 -04:00
Vincent St-Amour
02a4010880 Change the structure of the "extra precision" missed optimizations.
Avoids reports that are almost duplicates.

original commit: db9d51fef7505776a7250446496c1784043472e1
2011-07-15 15:04:58 -04:00
Vincent St-Amour
718e488786 Update messages. Irritants are now highlighted, not circled.
original commit: be67f304a80851fbdbc24db7f0797b2e0abce877
2011-07-15 15:04:57 -04:00
Vincent St-Amour
89217e6b02 Make a test a bit more complicated.
original commit: f4c3e51d3be3264144c4dae0477305dc40d94e74
2011-07-15 15:04:56 -04:00
Vincent St-Amour
6b5104aba7 Fix new optimization to use the new loggin facilities.
original commit: c5d46449b774eedf02877d1bbe8a6fb3f1b173cb
2011-07-15 15:04:55 -04:00
Vincent St-Amour
6e218da463 Keep located syntax around so we can use it in the tool.
original commit: c1fe25200ba1ed51962d7981190aebe2c67b8442
2011-07-15 15:04:54 -04:00
Vincent St-Amour
eb9b012989 Call locate-stx at the last minute, to avoid overeager duplicate detection.
original commit: d2a8a620b149d72ffac87ac980174c8afaa19a40
2011-07-15 15:04:54 -04:00
Vincent St-Amour
9596522404 Fix new optimization to use new logging.
original commit: 34ccf6a3fb7dfbe80897c1fafdc5eef1d73d6b68
2011-07-15 15:04:54 -04:00
Vincent St-Amour
2b655af885 Use locate-stx earlier in the logging process, for nicer display in the tool.
original commit: d3db388c05529e86363f43373d7ab779fd964935
2011-07-15 15:04:54 -04:00
Vincent St-Amour
eb1f25d82e Report missed fixnum optimizations.
original commit: d146f8c590d2a79784c908cd27ecbefa2ff95bdb
2011-07-15 15:04:54 -04:00
Vincent St-Amour
5c5e65651f Fix tests.
original commit: fbf802e61cbc6e0793c6632bc5661534148f0b4e
2011-07-15 15:04:54 -04:00
Vincent St-Amour
5a414fe1e5 Add nicer optimization reporting messages.
original commit: bfc4ad42255d4f74fae6aa9275fb2ad3080f5bd3
2011-07-15 15:04:53 -04:00
Vincent St-Amour
f36b2c20f7 Fix tests for new log format.
original commit: 9640d2bfbce297a2a10eeea36e7ad88121901e01
2011-07-15 15:04:53 -04:00
Vincent St-Amour
ed4f4fe43b Add the remaining diagnosis messages.
original commit: 00d23a4535bc9aa3fbfb5c77c53010efa49f384d
2011-07-15 15:04:53 -04:00
Vincent St-Amour
33380e814b Rewrite TR logging facilities to play nicely with the DrRacket tool.
original commit: 975cb7ad9d1cb2ca3f4cf78a8635c83a5c1494de
2011-07-15 15:04:53 -04:00
Vincent St-Amour
ed8a9d3eef Have a more useful message for float missed opts.
original commit: d68267cbfad06232e146e99dc9a36e296a604a0b
2011-07-15 15:04:53 -04:00
Vincent St-Amour
85ca514d49 Circle irritants.
original commit: 5ddfcfba9d69d350d7d58753e29e2ee4624984ec
2011-07-15 15:04:53 -04:00
Vincent St-Amour
75a9095893 Have nicer information to present in pop-ups.
original commit: a134e4ffb7b6c3b279943df9a03818c64bacef29
2011-07-15 15:04:52 -04:00
Vincent St-Amour
a8540ce6d2 Remove redundant optimization reporting.
original commit: 5e5fdb2981ccdb89416cd49c2291efd59653d85d
2011-07-15 15:04:52 -04:00
Vincent St-Amour
4fcae7c696 Remove extra keyword argument.
original commit: 65e56ab387e07750fd5984b27c618b0b4bd3d9e0
2011-07-15 15:04:52 -04:00
Vincent St-Amour
f1e541a102 Display larger regions for optimizations.
original commit: 8d680ced89bc822a50d08f66be4656f1003dd6a8
2011-07-15 15:04:52 -04:00
Vincent St-Amour
a3fec404a3 Remove highlights after editing.
original commit: 2ecec626b35432408d9d558fc4aac66ce3cf4dba
2011-07-15 15:04:52 -04:00
Vincent St-Amour
c4cb2c2154 Highlight opts and missed-opts in the editor.
original commit: 14be88628870bf34e6b71155c988c9a6f5cfa456
2011-07-15 15:04:52 -04:00
Vincent St-Amour
629feb81bf Pass log struct along with the log messages.
original commit: 7f3bb5d0173d22733f49ec0b5187ab433bc0d264
2011-07-15 15:04:52 -04:00
Vincent St-Amour
3f2009c651 Relocate TR logging capture.
original commit: a71a45e41f4b90bdb5196f17d3c78fc83f379caa
2011-07-15 15:04:51 -04:00
Vincent St-Amour
57ce28ef09 Added a button for the performance report tool when in a typed language.
original commit: 101feb82007f3c2f0f7831a6be368cdae411beab
2011-07-15 15:04:51 -04:00
Vincent St-Amour
0ba01d233e Fix TR tests to use the new contract error message format.
If 7b9b3c371b10 is included in the release, this should be too.

original commit: adeef671cd12826b5e565c47b600e313b9565bb8
2011-07-14 17:06:52 -04:00
Eric Dobson
c6af28ff8d Fix kernel-struct tests in TR.
original commit: e6030295fff3c50dd66ddcd6d1d39a5b8ea18247
2011-07-14 17:06:52 -04:00
Eric Dobson
1e46426c15 Document legacy form 'values'. Closes PR1145.
original commit: 30058a5a2404cfc9bdb9e5f99219f3c0f5a51bcf
2011-07-14 17:06:52 -04:00
Eric Dobson
acac002eb5 Fixes error messages for unsupported provide forms
original commit: 27ffe4cb6ab8c963e8f8e0e427370070e9af370b
2011-07-14 17:06:52 -04:00
Eric Dobson
2393ae1033 Clean up some contract errors and type->contract. Closes PR11756.
original commit: bf72db0f7b5120f9de8aa3c4a912de935256f605
2011-07-14 17:06:52 -04:00
Eric Dobson
aa247c5d10 Fixed require typed struct
original commit: abc8e514d9bb9e054c5a9083b47f7351899621a2
2011-07-14 17:06:52 -04:00