Eric Dobson
00820b2a91
Struct types now generate flat contracts when appropriate.
...
Closes PR 11686.
original commit: 613e121783d34c3e2cc4904f3e4f43639ab925b3
2011-05-03 08:15:37 -04:00
Vincent St-Amour
5b11b9f98b
Promote more literals at compile-time.
...
original commit: 4d24cbee606b19dea77d7225fba4517957d6fc0a
2011-04-29 17:16:39 -04:00
Vincent St-Amour
c8313ec1ac
Run optimizer tests in a throw-away namespace to reduce memory usage.
...
original commit: d9451ef4abb6e44ad6a47c76d07adcfe142dc43e
2011-04-29 15:28:30 -04:00
Vincent St-Amour
e24955b66a
Add set types to TR.
...
Original patch by Eric Dobson.
original commit: 632e36f751ea454874548cdb62d6cb73694c773d
2011-04-28 18:22:39 -04:00
Eric Dobson
3b22083244
made ephemeron test correct
...
original commit: c221c070763a9527840ddb2d5ebedf63b9af464d
2011-04-26 15:35:22 -04:00
Eric Dobson
b22c8c9c24
Beginning of ephemeron patch
...
original commit: 80fa8d3c9799ece292b764f69d10377a34d5495d
2011-04-26 15:35:22 -04:00
Vincent St-Amour
f01605d921
Fix bounded-fixnum opts to only fire with the right number of arguments.
...
original commit: 9c3bee03e7f24390338e3f37d06eb84940d6a137
2011-04-01 14:56:17 -04:00
Vincent St-Amour
5a35d4ea66
Optimize add1 and sub1 on floats and fixnums.
...
original commit: 3ebe9e78f9c86feb14d80dd499adec6438dc37e3
2011-03-18 13:25:05 -04:00
Vincent St-Amour
c8a4abd264
Improve TR's fixnum optimizations, using the new sub-fixnum types.
...
original commit: 1f0386b46cc7ef08ac59d1d3453412f5eaf3f1e3
2011-03-18 10:25:22 -04:00
Vincent St-Amour
f0bdca6383
Updated TR's base type environment to use the new numeric types.
...
This ended up being an almost complete rewrite of the base environment.
Note: While the commit is dated Jan 27, the work was finished on Mar 2.
original commit: ee29d371c9e6882edfc78621110bd11260ee942a
2011-03-18 10:25:21 -04:00
Vincent St-Amour
ddd2dd821b
Add an Exact-Number type.
...
original commit: 88fac43d551687efc72b6241c2dffbbaffe270d7
2011-03-18 10:25:20 -04:00
Vincent St-Amour
a8ee106320
Take the meet of constraints earlier in the inference process.
...
This avoids constraint explosions in some cases, notably when working
with polydots and plain variable arity functions at the same time.
However, this also weakens inference a bit (breaks it for
unholy-terror and related tests), but not in a way that affects any
practical use cases that I know of.
original commit: 80a9027f1eee6ea56a29aa73c65675f6cf86cdb2
2011-03-18 10:25:19 -04:00
Vincent St-Amour
f8ded9a56d
Change type of make-sequence to reflect changes to its implementation.
...
original commit: f8528ac8926bbf7d7eb032dbb287182336828bd4
2011-03-17 18:43:57 -04:00
Vincent St-Amour
4e38d34c5a
Fix expected optimization logs to reflect changes to for.
...
original commit: 35161a0ba675677fdcfd25bb9f44809173572e22
2011-03-17 13:10:19 -04:00
Vincent St-Amour
7635a7927d
Fix TR's GUI test harness.
...
original commit: 498ee4bea17298a96a8fc0ffee956e36e3b639c7
2011-03-17 13:10:19 -04:00
David Van Horn
091a0f64e3
Fixes more spelling errors.
...
original commit: 760a58b65df2b91010d2bcc2739ddab2a4489729
2011-02-04 19:44:13 -07:00
Vincent St-Amour
f8b7eb8073
Add a case-> type-constructor as a synonym for case-lambda.
...
original commit: 1b3052748e3278deefabf646f4990dc1f8064202
2011-01-31 16:39:20 -05:00
Vincent St-Amour
2b933e4436
Remove some legacy bindings.
...
original commit: d65438c9ea1bacce33579c81cc0e22120ab64f5d
2011-01-31 16:39:19 -05:00
Vincent St-Amour
f6590e9db2
Fix optimizer to work with new types.
...
original commit: 768bb6336142726023bfe2029b5aa25728bda0a3
2011-01-31 16:39:14 -05:00
Vincent St-Amour
956a1533c8
Fix TR tests.
...
original commit: a0a54b231db5c81e9ab66302399b6adc660b701f
2011-01-31 16:39:14 -05:00
Vincent St-Amour
3d6b5893ba
Add a predicate field to base types, which makes checking for
...
subtyping of value types easier.
However, this means that base types can't be marshaled as before,
since these predicates can't be marshaled. Instead, we now marshal
base types as identifiers that refer to their base type object.
original commit: e56663c943fe4ae355b6d626d3c84b6ec8ea7fd1
2011-01-31 16:39:13 -05:00
Vincent St-Amour
d5941cb2d6
TR's numeric tower is now built from unions of non-overlapping base types.
...
A lot of the work that was done by special-casing number types can now be
done by TR's handling of unions. This makes it easier to add more numeric
types to the tower and should make writing down types for numeric
primitives much less error-prone.
In addition, this commit adds several numeric types that will help get
tighter bounds on integer arithmetic, such as Index types. They will have
to be integrated to the base environment before they can be useful.
original commit: d4c93cc12e6df893ba2e782f0e0ea5529738315a
2011-01-31 16:39:13 -05:00
Vincent St-Amour
6a0aa26fde
Fix nightly running of TR tests.
...
original commit: 36ae5a9d50883395e521ead9abdcfe0321bf7943
2011-01-27 16:49:45 -05:00
Vincent St-Amour
b13ebb0924
Generalize hash table literals and subtypes of symbol.
...
Closes PR 11670.
original commit: 2bd0145603f411e01ce6e16bfcf6ffc842b6801a
2011-01-26 14:23:19 -05:00
Vincent St-Amour
6d105153f1
Fix portable fixnum size.
...
original commit: cb723092e26f980600df3d66c54321da28b0490e
2011-01-05 14:42:31 -05:00
Sam Tobin-Hochstadt
d2424d72fa
Fix TR tests for new contract error messages.
...
original commit: 2431f8f70646e00d3c65ef6d9d00fc75459d3ff0
2010-12-29 13:46:57 -05:00
Carl Eastlund
034c06a30e
New test case for formatting bug in TR error messages.
...
original commit: 5b18305e11b1f2bcba0e6d6e4ebfd7d51fb6ccba
2010-12-10 17:26:17 -05:00
Vincent St-Amour
432b1040dc
Update TR tests to reflect new contract error messages.
...
original commit: 09ffb7049288731040aa33c41b5c13952d9ab285
2010-12-10 16:59:13 -05:00
Vincent St-Amour
73046316e6
Allow running individual TR tests.
...
original commit: b9d67eea2f08e5eed8a5d28539aa749e2a64f790
2010-12-10 16:59:12 -05:00
Vincent St-Amour
a00e498399
Error when running TR's test harness with no tests.
...
original commit: 407d9b5f0792ff94438a7e5f5448f54dddb8f7d9
2010-12-10 13:44:47 -05:00
Vincent St-Amour
a650c59fb3
Test for errors in rhs.
...
original commit: 365d2726660ab9342f229789f268e2461cdd2063
2010-12-08 20:32:20 -05:00
Vincent St-Amour
f4a1a31f61
Typecheck body of letrec using original types instead of potentially undefined type.
...
original commit: 81ef5f9418b0011daa980d438c0eed451b37d578
2010-12-08 20:32:20 -05:00
Vincent St-Amour
2865f2801f
letrec: consider outside bindings safe.
...
original commit: b045153177afe8aaebdbf179dbe27670b1cf577d
2010-12-08 20:32:19 -05:00
Sam Tobin-Hochstadt
1527fba4b3
Allow arbitrary filter specification in function types.
...
Allow (A -> B -> C) for curried function types.
original commit: 87eab889d68dd46bfd5b0f4d79942bc104cb3da2
2010-12-08 18:22:29 -05:00
Sam Tobin-Hochstadt
05e1489dfb
Better handling of `hash-*' functions, and hashes as sequences.
...
original commit: 73dbf42e0e6fb750d871060d6ed34adf6e207eec
2010-12-08 18:22:29 -05:00
Vincent St-Amour
5acfe5b67d
Take into account potentially undefined values in letrec.
...
Closes PR11511.
original commit: dc2df4882b6abca46839ace724924df5ab0d7707
2010-12-08 18:17:06 -05:00
Vincent St-Amour
9c5a1e0086
Fixed a fixnum typechecking issue.
...
original commit: 4c081c127ab91067c3a69568175d7274b090f986
2010-11-04 17:27:34 -04:00
Sam Tobin-Hochstadt
db3c6bbbe0
Avoid dumb parsing bugs in require/typed.
...
original commit: 561fdc8db580c828a45dc27c4ca61b21dccad311
2010-10-26 18:09:45 -04:00
Vincent St-Amour
9b5a5a6bb5
Fix opt-lambda:. Merge to 5.0.2.
...
original commit: a15236ea4f1ba84c9351632e9469e1cd34b5375b
2010-10-20 14:32:37 -04:00
Vincent St-Amour
4a6b3b2b57
Removed logging when no optimization actually happens.
...
original commit: 12a5454b147468df59e92cb7057e0e9515ad5abd
2010-10-14 14:13:06 -04:00
Vincent St-Amour
759a3707c8
Fixed a test to reflect implicit let in cond instead of implicit begin.
...
original commit: 3f5ea8a5be1da62f4766585f891e7c5340c52588
2010-10-14 10:53:43 -04:00
Vincent St-Amour
1a4e176824
Inexact-Complex -> Float-Complex
...
original commit: 27e722f27b673cbfcee60aaba75dfdcab7e396c5
2010-10-12 16:47:46 -04:00
Vincent St-Amour
d60793d271
Changed the interface for running single optimizer tests.
...
original commit: f3ae9c73b0f58d2d56e2ee3cee605c58a9bb3a1d
2010-10-12 16:47:45 -04:00
Vincent St-Amour
19784fffe5
Improved TR's error messages when all domains but one have been eliminated.
...
original commit: db0046101cb8b75e56215b4528d280894c59a36d
2010-10-07 18:30:35 -04:00
Vincent St-Amour
30780b3f6a
Changed the optimizer's test harness for optimization on by default.
...
original commit: abcbce129bf65fc63daa33d843589305efd94b81
2010-10-06 17:32:30 -04:00
Vincent St-Amour
7876c75cbc
Got rid of a broken subtyping rule.
...
original commit: 5a67535a950ba19846151a6f7a3f7a473affea86
2010-10-01 17:48:47 -04:00
Vincent St-Amour
8c6264008d
Delete compiled benchmarks when testing.
...
original commit: f7436b59fb3d1f91481216148f4e147315b0144c
2010-10-01 17:48:46 -04:00
Matthew Flatt
b6a14210ed
rename file to avoid :, which is not allowed under Windows
...
original commit: fa7dd9b522f0dd14d3b71c74256803228379d562
2010-09-20 03:31:18 -06:00
Vincent St-Amour
75d628bd68
Added a test for optional let annotations.
...
original commit: 7e2094f2d719cfdb626c6aa78893a8516c9a7ea0
2010-09-16 13:24:10 -04:00
Vincent St-Amour
8a94fce374
Fix some optimizer test logs to reflect racket changes.
...
original commit: e03e53b1cba5a63b5f9c0dafbb777d7116c93d1d
2010-09-16 10:48:28 -04:00