Commit Graph

3509 Commits

Author SHA1 Message Date
Matthew Flatt
306e091f35 fix a `(with-handlers ([exn? ....]) ....)' 2011-08-09 16:33:18 -06:00
Matthew Flatt
2d06f4247f keyword-function repairs 2011-08-09 16:33:17 -06:00
Matthew Flatt
f646511ca7 first small step toward cross-module optimization
Mainly propagates constantness for the benefit of keyword
applications, but also propagates simple constants
2011-08-09 16:33:17 -06:00
Matthew Flatt
5352d670c4 generalize #%variable-reference' and add variable-reference-constant?'
Use the new functions to make the expansion of keyword applications
to known procedure work  with mutation.
2011-08-09 16:33:17 -06:00
Jon Rafkind
4538335b1c [honu] return a void expression if there is no current expression waiting to be processed 2011-08-09 16:25:27 -06:00
Jon Rafkind
3bcf99b8f6 [honu] parse brace-enclosed code as an expression 2011-08-09 11:57:52 -06:00
Jon Rafkind
8a352da71c re-enable test 2011-08-09 11:57:51 -06:00
John Clements
afc01ca2d1 updated expected (cons 1 2) error message 2011-08-09 09:42:23 -04:00
Jay McCarthy
6da3ac36ec Test is sensitive to contract messages 2011-08-09 06:42:09 -06:00
Robby Findler
40c68df514 fix the auto-square-bracket thing for with-syntax
closes PR 12096
2011-08-08 19:30:13 -05:00
Jay McCarthy
a4f70ae598 Fixing PR12085 2011-08-08 12:39:22 -06:00
Jon Rafkind
aac511dfb6 disabled the wrong test. this is the right one 2011-08-08 10:32:08 -06:00
Jon Rafkind
3e8ad26b1f need a single expression so the test doesnt fail 2011-08-07 18:24:30 -06:00
Jon Rafkind
513d73068e disable honu test for now 2011-08-07 17:51:29 -06:00
Robby Findler
1218cbfef6 improve send error message in the case that there is only one arg
closes PR 12091
2011-08-06 19:27:02 -05:00
Matthew Flatt
2d4e14dca8 fix a kill-safety problem in the module name resolver 2011-08-06 08:25:36 -06:00
Vincent St-Amour
b124d68f40 Improve error message for calls to 'sort' when inference fails. 2011-08-03 17:39:15 -04:00
Matthew Flatt
3b8d00029e fix `namespace-attach-module{-declaration}' problem
Closes PR 12048
2011-08-02 17:06:12 -06: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
33cf3a167b add test case for PR 12084, clean up exception predicates in test suite a little 2011-08-02 16:28:13 -05:00
Eli Barzilay
68fce6d9db Revert "Have DrDr keep ignoring the random seeds."
(Since DrDr never ignored that text.)

This reverts commit e972c0c392.
2011-08-02 16:56:02 -04:00
Eli Barzilay
e52e7defae Much improved `wrapped-output'. 2011-08-02 16:56:02 -04:00
Matthew Flatt
fba1777b8a fix contract 2011-08-02 06:48:54 -06:00
Matthew Flatt
ec27cbfd90 fix problems related to futures and is-list flags on pairs
Although a future thread used an atomic compare-and-swap to
set "is a list" or "not a list" flag on pairs via the
JIT-implemented `list?', the hashing function in the runtime
thread did not; as a result, it might be possible to lose
a hash code due to cache inconsistency (although I'm not
sure it's actually possible, and I couldn't trigger a problem
with a test). Most of the changes are related to using
an atomic compare-and-swap when setting a hash code, as
well as clean-ups to related code. Processor-count tests
avoid using atomic compare-and-swap on uniprocessors, which
might not support the relevant machine instructions.

As significantly, the compare-and-swap operation for the
JIT-implemented `list?' did not actually set flags on
a pair that has a hash code. This could lead to `list?'
tests that were not constant time (but only if the relevant
pair's `eq?' hash code had been used previously).
2011-07-31 04:43:24 -06:00
Vincent St-Amour
5b22dfb6b0 Add for*/sum: and for*/product: to TR.
These currently don't play nice with inference, so they only work in
limited cases.
2011-07-29 12:54:29 -04:00
Vincent St-Amour
6a8011854b Add for/sum: and for/product: to TR. 2011-07-29 12:54:29 -04:00
Eli Barzilay
7585edbcb6 xrepl improvments:
* a single function to set up all environment parameters.

* improve `getarg's treatment of default thunk

* Add an error display handler that doesn't show the context and instead
  add a ,bt command to show it.
2011-07-29 07:29:29 -04:00
John Clements
0bcff68226 minor testing changes 2011-07-28 22:51:00 -04:00
Matthew Flatt
f1160da419 add for/sum', for/product', etc. 2011-07-27 05:47:46 +01:00
Jay McCarthy
99fd3546be Adding serialization of theories 2011-07-26 08:22:19 -04:00
Eli Barzilay
61f628f2c6 fix error reporting in `reencode-output-port'
Closes PR 12077
2011-07-25 23:46:16 -04:00
Matthew Flatt
e01ee43300 fix error reporting in `reencode-input-port'
Closes PR 12076
2011-07-25 13:11:05 -04:00
Matthew Flatt
73b16c8578 don't constant-fold an fx operation if the result is non-fx
In fact, the result must be an fx on all platforms, since
compilation should be platform-independent.
2011-07-25 11:30:23 -04:00
Robby Findler
7d06ae80f4 do a better job putting the right info into the struct id for provide/contract's struct clauses
closes PR 12053
2011-07-24 23:25:39 -04:00
Jay McCarthy
6e59cbf1d7 Adding documentation and tests for xml/path 2011-07-24 16:58:59 -04:00
Jay McCarthy
75631c6f2a Repairing tests 2011-07-24 16:58:59 -04:00
Jay McCarthy
df0e35b213 Adding the basics of the servlet testing library, but then discovered a weird error, and took a sidetrack to catch it. I'm making a commit to be able see if there were any real problems or if it is just broken tests 2011-07-24 16:58:59 -04:00
Stephen Chang
7e933ee8a4 fix stepper test-engine unclosed input-port (in windows) problem 2011-07-24 12:19:05 -04:00
Jon Rafkind
23e907aa5c add printf. recognize strings as atoms 2011-07-22 14:43:45 -04:00
Jon Rafkind
d4ea3b5d79 parse multiple call arguments 2011-07-22 14:43:45 -04:00
Stevie Strickland
01396784c9 Fix set/c to conform to hash/c-like restrictions.
Since sets are implemented using the elements as the domain of a hash table,
the following must be true:
 * element contracts for (seteq ...) must be flat
 * element contracts for (seteqv ...) must be flat
 * element contracts for (set ...) must be chaperones, and the resulting
   contract is a chaperone contract

Also, change higher-order set/c contracts to be chaperone contracts
due to the new restrictions.
2011-07-21 18:49:06 -04:00
Vincent St-Amour
73140544ce Clean up. 2011-07-21 17:06:03 -04:00
Vincent St-Amour
b068e4a53b Add a lower-level interface to unstable/logging. 2011-07-21 17:06:03 -04:00
Jon Rafkind
1b914ead61 add optional val before functions and arguments 2011-07-20 19:22:30 -06:00
Jon Rafkind
292512221e function == lambda. add new syntax for defining functions 2011-07-20 19:22:30 -06:00
Sam Tobin-Hochstadt
7a763a2da8 Fix types of kernel struct constructors to include parent fields.
Merge to 5.1.2.
2011-07-20 15:19:53 -04:00
Eric Dobson
e07ce478af Switched name field in struct type to identifier. Closes PR 11728.
Closes PR 11998. Closes PR11859.
2011-07-19 16:47:13 -04:00
Eric Dobson
a7f0f7591d Fixed types for path operations. Closes PR12057. 2011-07-19 16:47:13 -04:00
Eli Barzilay
f5e53de4d9 XREPL tests.
Not too much, but already tests large parts of sensitive code.  Caught a
bug where ,top would use (enter! #f) but enter grabbed the wrong
namespace since it was instantiated in the wrong namespace.
2011-07-19 16:39:15 -04:00
Vincent St-Amour
419398ce1a Fix test to not be dependent on floating-point printing. 2011-07-19 15:19:17 -04:00