Commit Graph

334 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
44d46e4cd7 Refactor substitution.
- new file types/substitute
 - use structs for substitutions
2010-06-21 18:30:28 -04:00
Sam Tobin-Hochstadt
dcc8beb5cd This test case now passes. 2010-06-21 18:30:28 -04:00
Sam Tobin-Hochstadt
e235c837b0 The inference engine doesn't need this annotation anymore. 2010-06-21 18:30:25 -04:00
Sam Tobin-Hochstadt
7b2de53733 Re-enable the printer here. 2010-06-21 18:30:24 -04:00
Sam Tobin-Hochstadt
12384c6c3f Change type variable environments from hash tables to sets. 2010-06-21 18:29:59 -04:00
Sam Tobin-Hochstadt
e9f8cc9aca Refactor test harness. 2010-06-21 18:29:59 -04:00
Sam Tobin-Hochstadt
f7b59f78e9 Generalize ListDots to Listof in inference of loop var types. 2010-06-21 18:29:58 -04:00
Sam Tobin-Hochstadt
a2af89bafd Inference for passing ListDots as Listof. 2010-06-21 18:29:57 -04:00
Sam Tobin-Hochstadt
fd5a662ccc Subtyping between (List T ... a) and (Listof T[Any/a]) 2010-06-21 18:29:57 -04:00
Sam Tobin-Hochstadt
4cbeb0b2f0 Change type of ... rest args to have (List T ...) types. 2010-06-21 18:29:56 -04:00
Sam Tobin-Hochstadt
e40d1824b0 Initial ListDots test. 2010-06-21 18:29:56 -04:00
Sam Tobin-Hochstadt
50f93b9ed7 More environment refactoring.
- rationalize naming of files
- split files by env constructed
2010-06-21 18:29:55 -04:00
Sam Tobin-Hochstadt
1e15ce1f32 Fix error message for 1-arg apply 2010-06-19 14:58:52 -04:00
Sam Tobin-Hochstadt
77e4bbb5eb base-types-new -> base-types 2010-06-17 11:47:16 -04:00
Sam Tobin-Hochstadt
bdbb6d48e6 Try harder to find types for loop variables.
- use `find-annotation' more
 - recognize (let ([x y]) ...)
2010-06-17 11:26:33 -04:00
Sam Tobin-Hochstadt
4cc86cc8c8 set-mc[ad]r!, inference, printing, tests for mpairs 2010-06-15 16:10:16 -04:00
Sam Tobin-Hochstadt
f73d63e1af eq? is a predicate for eof 2010-06-15 14:59:08 -04:00
Sam Tobin-Hochstadt
cf5c74a2ca Generate -> instead of ->* when required by case->.
Closes PR 10977.
2010-06-13 15:01:57 -04:00
Sam Tobin-Hochstadt
d4d286d31d Allow (All (A) A -> A), dropping pair of parens. 2010-06-13 14:38:03 -04:00
Sam Tobin-Hochstadt
1cff0a1f85 Actually typecheck actuals even when there's a type annotation. 2010-06-11 19:35:56 -04:00
Sam Tobin-Hochstadt
7ece2a4872 Fix type of `zero?' to properly handle 0.0. 2010-06-11 18:54:05 -04:00
Sam Tobin-Hochstadt
fd1b20c93d Fix optimizer for refactoring. 2010-06-11 14:21:42 -04:00
Sam Tobin-Hochstadt
b649575afc new bug with mutation 2010-06-11 11:55:22 -04:00
Sam Tobin-Hochstadt
0379e534e3 New interface for unstable/mutated-vars
- functional hash tables
 - fix clients
2010-06-10 13:28:29 -04:00
Vincent St-Amour
6b4ca4d7b0 Added tests and documentation for Thread and Channel types. 2010-06-09 14:54:37 -04:00
Vincent St-Amour
0741b48c99 Modified the for: macros to use sequence types. 2010-06-09 14:54:34 -04:00
Sam Tobin-Hochstadt
78023d08f9 Sequenceof type.
- inferencing and subtyping relation with vectors, lists, etc
- use in `make-sequence'
- add tests
2010-06-09 11:03:12 -04:00
Sam Tobin-Hochstadt
78832fe332 Support case-lambda with multiple branches with keyword arguments. 2010-06-08 17:50:48 -04:00
Sam Tobin-Hochstadt
7f300a2c4f Special-case (- x 1) for use in loops. 2010-06-08 12:05:56 -04:00
Sam Tobin-Hochstadt
7df8e32793 Properly handling immutable invariant structs. 2010-06-07 14:03:06 -04:00
Sam Tobin-Hochstadt
0e3c2b71cc Test for PR 10946. 2010-06-01 13:38:45 -04:00
Vincent St-Amour
2229173b82 Changed the types of some numerical operations to be closed on naturals. 2010-05-29 11:31:47 -04:00
Sam Tobin-Hochstadt
d323a794e8 Change `typed-scheme' numerics.
- `number?' no longer `real?'
 - Number no longer Real
 - remove obsolete environments
 - Fix tests to use Real where necessary.
 - Fix typed/mred and typed/framework
 - Fix insert-large-letters to use `sub1' for type-safe loop

Merge to 5.0.
2010-05-28 19:24:46 -04:00
Vincent St-Amour
e9a0014630 Disabled multi-valued seq-exprs in the for: macros because using them
triggers an internal error in the typechecker.
2010-05-28 19:05:44 -04:00
Vincent St-Amour
c92ae73859 Wrote tests for the for: macros. 2010-05-28 19:05:44 -04:00
Sam Tobin-Hochstadt
34fef6e538 Re-enable test. 2010-05-27 12:46:29 -04:00
Sam Tobin-Hochstadt
9701ae0065 Avoid requiring old base-types. 2010-05-27 10:56:18 -04:00
Sam Tobin-Hochstadt
63dbde1e9e Fix test for new `do:' behavior. 2010-05-27 10:10:26 -04:00
Eli Barzilay
5c702976c2 A few more stray "racunit"s. 2010-05-26 15:21:55 -04:00
Sam Tobin-Hochstadt
775e1b06a5 Test for former bug. Closes PR 10470. 2010-05-25 00:09:03 -07:00
Sam Tobin-Hochstadt
27e971dce2 Check that at least one require spec is provided.
Closes PR 10617.
 Merge to v5.0.
2010-05-24 22:33:31 -07:00
Sam Tobin-Hochstadt
af689b2531 Tests for bug found by David Van Horn. 2010-05-24 14:04:43 -07:00
Sam Tobin-Hochstadt
f320d36e9c Fix parsing of All on RHS of -> 2010-05-24 13:26:29 -07:00
Sam Tobin-Hochstadt
230f1a59c6 More precise types for: truncate, floor ceiling 2010-05-21 10:41:24 -04:00
Sam Tobin-Hochstadt
e9ac3651a4 Add test file.
Closes PR 10594.
2010-05-19 15:22:22 -05:00
Sam Tobin-Hochstadt
9fe3747a19 Allow expected type to have weaker filters and objects.
Closes PR 10729.
2010-05-19 15:14:18 -05:00
Sam Tobin-Hochstadt
7e9313bad3 Allow recursive types in type annotations for `list'.
Closes PR 10562.
 Tests for fixed bugs.
2010-05-19 15:14:18 -05:00
Vincent St-Amour
790658886b Wrote tests for the new pair accessor type signatures. 2010-05-19 13:10:36 -04:00
Sam Tobin-Hochstadt
3fd5c49172 Add test for PR 10318.
Closes PR 10318.
2010-05-19 11:12:13 -05:00
Sam Tobin-Hochstadt
638245e4c5 Better type annotation support.
- Delay more errors for additional reporting.
 - Don't re-check expressions that were checked for inference.
 Closes PR 10098.
2010-05-19 10:10:54 -05:00