Commit Graph

1235 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
45d06c58a6 Fix undocumented binding.
(cherry picked from commit 295cb191cf)
2011-04-23 09:26:15 -04:00
Sam Tobin-Hochstadt
f858496f14 Avoid resolving types when checking subtyping on structs.
This fixes problems with caching, because sometimes we were giving the wrong answer for nested calls to `subtype'.
(cherry picked from commit 82e6e9d19e)
2011-04-20 19:28:36 -04:00
Sam Tobin-Hochstadt
cf55168496 Use `in-hash' explicitly.
(cherry picked from commit d459ad47b8)
2011-04-20 19:28:33 -04:00
Sam Tobin-Hochstadt
de002b69e3 Add type keys for Struct and StructTop.
(cherry picked from commit fe60793b4d)
2011-04-20 19:28:29 -04:00
Sam Tobin-Hochstadt
a191a15bca Add clever comments.
(cherry picked from commit 6c17b01f99)
2011-04-20 19:28:25 -04:00
Sam Tobin-Hochstadt
6a906b01b0 Add debugging parameter, and wrappers for unstable/debug.
(cherry picked from commit eaa63f2d1e)
2011-04-20 19:28:21 -04:00
Sam Tobin-Hochstadt
5255446653 Add cache for `resolve-once'.
Substantial speedups on "new-metrics.rkt" test.
(cherry picked from commit 79061150ef)
2011-04-20 19:28:00 -04:00
Sam Tobin-Hochstadt
4380e6d01c Use eq? on sequence numbers.
(cherry picked from commit 0f30f5d8de)
2011-04-20 19:27:57 -04:00
Sam Tobin-Hochstadt
2da100ba8f Remove useless requires.
(cherry picked from commit 51083dbce6)
2011-04-20 19:27:54 -04:00
Sam Tobin-Hochstadt
0a8ad31a47 Fix typo.
(cherry picked from commit 7ba2b6e100)
2011-04-20 19:27:51 -04:00
Sam Tobin-Hochstadt
0d898db859 Remove unused macro.
Convert function to macro for inlining.
(cherry picked from commit e7beef3f4f)
2011-04-20 19:27:45 -04:00
Sam Tobin-Hochstadt
d938e0c9b0 Refactor to avoid duplicated code.
(cherry picked from commit 05d9e1a871)
2011-04-20 19:27:40 -04:00
Sam Tobin-Hochstadt
05260c16c2 Remove useless propositional clauses. Thanks to dyoo for test case.
(cherry picked from commit 0f5dfd6871)
2011-04-20 19:26:52 -04:00
Sam Tobin-Hochstadt
cb4ab1869e Copy properties when optimizing bodies of lambda/define-values.
Closes PR 11860.
(cherry picked from commit 981616d504)
2011-04-19 09:31:10 -04:00
Sam Tobin-Hochstadt
d61e0e4c5c Remove unused code.
(cherry picked from commit 187dc63493)
2011-04-19 09:31:06 -04:00
Hari Prashanth
14ba5fb38a Added some examples to to the TR reference docs.
Signed-off-by: Sam Tobin-Hochstadt <samth@racket-lang.org>
(cherry picked from commit 7934ac3461)
2011-04-19 09:31:03 -04:00
Vincent St-Amour
2db9698835 Optimize filter operations.
(cherry picked from commit bce90e2a71)
2011-04-19 09:30:58 -04:00
Robby Findler
570a3e58b9 renamed parametric/c to parametric->/c
and cleaned up the organization of the related files
2011-04-09 21:45:49 -05:00
Ryan Culpepper
7828a7bfa7 moved unstable/{location,srcloc} to syntax collection
fixed bugs in unstable/wrapc
2011-04-08 08:25:22 -06:00
Ryan Culpepper
f49412add8 moved unstable/poly-c to racket/contract/parametric 2011-04-08 08:25:22 -06:00
Ryan Culpepper
73ab167522 created racket/syntax from parts of unstable/syntax 2011-04-07 09:47:20 -06:00
Vincent St-Amour
9c3bee03e7 Fix bounded-fixnum opts to only fire with the right number of arguments. 2011-04-01 14:56:17 -04:00
Vincent St-Amour
60cc8c4453 Fix type of sqr. 2011-03-21 16:06:37 -04:00
Vincent St-Amour
4ba3f1a6dd Fix type names. 2011-03-18 13:25:06 -04:00
Vincent St-Amour
3ebe9e78f9 Optimize add1 and sub1 on floats and fixnums. 2011-03-18 13:25:05 -04:00
Vincent St-Amour
d06bf0de91 Use subtype test, just in case. 2011-03-18 13:25:05 -04:00
Vincent St-Amour
17afa91c09 Provide the index? predicate. 2011-03-18 13:24:58 -04:00
Vincent St-Amour
1f0386b46c Improve TR's fixnum optimizations, using the new sub-fixnum types. 2011-03-18 10:25:22 -04:00
Vincent St-Amour
bde2ee0b8d Changes to the regular base type environment. 2011-03-18 10:25:22 -04:00
Vincent St-Amour
ee29d371c9 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.
2011-03-18 10:25:21 -04:00
Vincent St-Amour
bf6379c363 Add a helper function to add filters en masse to express propositions
that are true about a function's arguments if the function returns.
2011-03-18 10:25:20 -04:00
Vincent St-Amour
88fac43d55 Add an Exact-Number type. 2011-03-18 10:25:20 -04:00
Vincent St-Amour
80a9027f1e 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.
2011-03-18 10:25:19 -04:00
Vincent St-Amour
d0bab99535 Move subtype check in inference engine earlier, for performance reasons. 2011-03-17 18:43:59 -04:00
Vincent St-Amour
e450e2815b Share dotted variables to make inference faster. 2011-03-17 18:43:58 -04:00
Vincent St-Amour
bd301912c0 Remove duplicate constraints when taking their meet. 2011-03-17 18:43:58 -04:00
Vincent St-Amour
f8528ac892 Change type of make-sequence to reflect changes to its implementation. 2011-03-17 18:43:57 -04:00
Vincent St-Amour
fe8f1c3591 Fix contract. 2011-03-17 13:10:19 -04:00
David Van Horn
760a58b65d Fixes more spelling errors. 2011-02-04 19:44:13 -07:00
David Van Horn
c9519fd113 Fixed various spelling errors. 2011-02-03 17:42:33 -05:00
Vincent St-Amour
3c081d8fa7 Document the Path-String type. 2011-02-01 18:00:26 -05: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
22391be437 Cleanup of exposed base types. 2011-01-31 16:39:19 -05:00
Vincent St-Amour
0f0a2625c6 Fix typechecking of single flonum literals, now that they are enabled by default. 2011-01-31 16:39:18 -05:00
Vincent St-Amour
f1c6c74284 Small-Float -> Single-Flonum 2011-01-31 16:39:18 -05:00
Vincent St-Amour
4ac36fd59b Added the new single-precision float function to TR. 2011-01-31 16:39:18 -05:00
Vincent St-Amour
b26531774b Update base-env-indexing to use the new types. 2011-01-31 16:39:15 -05:00
Vincent St-Amour
46f086282d Bytes are a sequence of the new Byte type. 2011-01-31 16:39:15 -05:00
Vincent St-Amour
5dbc752542 Edit TR's optimizer's docs to reflect that Float-Complex is the only
complex type that can be optimized.
2011-01-31 16:39:15 -05:00