Commit Graph

494 Commits

Author SHA1 Message Date
David Van Horn
760a58b65d Fixes more spelling errors. 2011-02-04 19:44:13 -07:00
Vincent St-Amour
1b3052748e Add a case-> type-constructor as a synonym for case-lambda. 2011-01-31 16:39:20 -05:00
Vincent St-Amour
d65438c9ea Remove some legacy bindings. 2011-01-31 16:39:19 -05:00
Vincent St-Amour
768bb63361 Fix optimizer to work with new types. 2011-01-31 16:39:14 -05:00
Vincent St-Amour
a0a54b231d Fix TR tests. 2011-01-31 16:39:14 -05:00
Vincent St-Amour
e56663c943 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.
2011-01-31 16:39:13 -05:00
Vincent St-Amour
d4c93cc12e 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.
2011-01-31 16:39:13 -05:00
Vincent St-Amour
36ae5a9d50 Fix nightly running of TR tests. 2011-01-27 16:49:45 -05:00
Vincent St-Amour
2bd0145603 Generalize hash table literals and subtypes of symbol.
Closes PR 11670.
2011-01-26 14:23:19 -05:00
Vincent St-Amour
cb723092e2 Fix portable fixnum size. 2011-01-05 14:42:31 -05:00
Sam Tobin-Hochstadt
2431f8f706 Fix TR tests for new contract error messages. 2010-12-29 13:46:57 -05:00
Carl Eastlund
5b18305e11 New test case for formatting bug in TR error messages. 2010-12-10 17:26:17 -05:00
Vincent St-Amour
09ffb70492 Update TR tests to reflect new contract error messages. 2010-12-10 16:59:13 -05:00
Vincent St-Amour
b9d67eea2f Allow running individual TR tests. 2010-12-10 16:59:12 -05:00
Vincent St-Amour
407d9b5f07 Error when running TR's test harness with no tests. 2010-12-10 13:44:47 -05:00
Vincent St-Amour
365d272666 Test for errors in rhs. 2010-12-08 20:32:20 -05:00
Vincent St-Amour
81ef5f9418 Typecheck body of letrec using original types instead of potentially undefined type. 2010-12-08 20:32:20 -05:00
Vincent St-Amour
b045153177 letrec: consider outside bindings safe. 2010-12-08 20:32:19 -05:00
Sam Tobin-Hochstadt
87eab889d6 Allow arbitrary filter specification in function types.
Allow (A -> B -> C) for curried function types.
2010-12-08 18:22:29 -05:00
Sam Tobin-Hochstadt
73dbf42e0e Better handling of `hash-*' functions, and hashes as sequences. 2010-12-08 18:22:29 -05:00
Vincent St-Amour
dc2df4882b Take into account potentially undefined values in letrec.
Closes PR11511.
2010-12-08 18:17:06 -05:00
Vincent St-Amour
4c081c127a Fixed a fixnum typechecking issue. 2010-11-04 17:27:34 -04:00
Sam Tobin-Hochstadt
561fdc8db5 Avoid dumb parsing bugs in require/typed. 2010-10-26 18:09:45 -04:00
Vincent St-Amour
a15236ea4f Fix opt-lambda:. Merge to 5.0.2. 2010-10-20 14:32:37 -04:00
Vincent St-Amour
12a5454b14 Removed logging when no optimization actually happens. 2010-10-14 14:13:06 -04:00
Vincent St-Amour
3f5ea8a5be Fixed a test to reflect implicit let in cond instead of implicit begin. 2010-10-14 10:53:43 -04:00
Vincent St-Amour
27e722f27b Inexact-Complex -> Float-Complex 2010-10-12 16:47:46 -04:00
Vincent St-Amour
f3ae9c73b0 Changed the interface for running single optimizer tests. 2010-10-12 16:47:45 -04:00
Vincent St-Amour
db0046101c Improved TR's error messages when all domains but one have been eliminated. 2010-10-07 18:30:35 -04:00
Vincent St-Amour
abcbce129b Changed the optimizer's test harness for optimization on by default. 2010-10-06 17:32:30 -04:00
Vincent St-Amour
5a67535a95 Got rid of a broken subtyping rule. 2010-10-01 17:48:47 -04:00
Vincent St-Amour
f7436b59fb Delete compiled benchmarks when testing. 2010-10-01 17:48:46 -04:00
Matthew Flatt
fa7dd9b522 rename file to avoid :, which is not allowed under Windows 2010-09-20 03:31:18 -06:00
Vincent St-Amour
7e2094f2d7 Added a test for optional let annotations. 2010-09-16 13:24:10 -04:00
Vincent St-Amour
e03e53b1cb Fix some optimizer test logs to reflect racket changes. 2010-09-16 10:48:28 -04:00
Vincent St-Amour
9f87b5a7e6 Made some type annotations optional in the for: macros. 2010-09-15 20:21:51 -04:00
Vincent St-Amour
8b60085a17 Removed useless requires. 2010-09-15 20:21:51 -04:00
Vincent St-Amour
a10d145f25 Added annotated versions of the for macros that generate vectors.
They are purposedly left out of the documentation since the typchecker
can't currently handle their expansion.
2010-09-15 20:21:50 -04:00
Vincent St-Amour
65c502f9d7 Added a test to make sure derived lists accessors don't get optimized then they shouldn't. 2010-09-15 20:21:50 -04:00
Sam Tobin-Hochstadt
979561354d Fix internal error when single value expected. 2010-09-10 18:29:34 -04:00
Vincent St-Amour
0166ece180 Extended pair optimization to the rest of the standard derived pair accessors. 2010-09-09 18:54:34 -04:00
Vincent St-Amour
7450821068 Refactoring. 2010-09-09 18:54:34 -04:00
Vincent St-Amour
024f873947 Extended pair optimizations to some derived pair accessors. 2010-09-09 18:54:33 -04:00
Vincent St-Amour
7f546434ed Included expected optimization logs in the test files. 2010-09-09 18:54:33 -04:00
Sam Tobin-Hochstadt
00a8a85f9d Fix typechecker tests for new environment setup. 2010-09-09 16:08:04 -04:00
Sam Tobin-Hochstadt
b6b840076b Lots more laziness, and useless require removal. 2010-09-09 16:08:03 -04:00
Sam Tobin-Hochstadt
a0e77705e5 Propogate #:mutable for polymorphic structs.
Closes PR 11127
2010-09-08 10:47:51 -04:00
Sam Tobin-Hochstadt
91fefa055e Make syntax of #{} less accepting of errors. 2010-09-08 10:24:58 -04:00
Vincent St-Amour
14097dd90e Fix broken tests that depended on an unsafe optimization. 2010-09-07 20:11:44 -04:00
Vincent St-Amour
e1fd445fa4 Ignored a rounding error between PPC and x86. 2010-08-29 10:17:56 -04:00