Commit Graph

339 Commits

Author SHA1 Message Date
Eric Dobson
cc52e56fe6 Add way for code to attach typechecks to itself, and implemented make-predicate. 2012-08-20 12:39:40 -04:00
Eric Dobson
115345300d Allow contract definitions created from expressions to be fixed up. 2012-08-20 12:39:40 -04:00
Eric Dobson
bb67e37c49 Make TR's ignore-some property work even if there isn't an internal form. 2012-08-20 12:39:40 -04:00
Eric Dobson
09d32d35e0 Add promise support to type->contract.
Closes PR13024.
2012-08-20 10:10:17 -04:00
Eric Dobson
a408d6bfbf Cleanup builtin structs types. 2012-08-20 10:10:17 -04:00
Eric Dobson
df6562c1de Make promises like every other TR container. 2012-08-14 16:16:07 -04:00
Eric Dobson
ac493a6f44 Replaced infer-dummy with lazy-require. 2012-08-14 16:04:51 -04:00
Eric Dobson
9ef80edfef Fix internal error for untyped kw functions.
Closes PR12932.
Closes PR12922.
2012-08-14 16:04:51 -04:00
Eric Dobson
fdd2966cf4 Removed deprecated printf/log. 2012-08-14 16:04:48 -04:00
Sam Tobin-Hochstadt
ade36c36c6 Don't special-case applications with instantiations.
Closes PR 13006.
2012-08-14 15:45:47 -04:00
Eric Dobson
3b6168de7d Fix substitute and add test case. 2012-08-14 14:44:55 -04:00
Eric Dobson
2e3965e777 Make simple substitution happen all at once.
Closes pr12920.
2012-08-14 14:44:55 -04:00
Vincent St-Amour
f514550300 Fix type of expt.
Closes PR13026.
2012-08-14 14:37:18 -04:00
Vincent St-Amour
af8fc1f26a Fix types of magnitude and angle.
Closes PR13025.
2012-08-14 14:37:18 -04:00
Sam Tobin-Hochstadt
973da6a50c Move define-struct/printer to new file.
Avoids runtime dependency on `racket/generic`.
2012-08-14 10:31:22 -04:00
Sam Tobin-Hochstadt
fddd5c63ff Minor printer refactoring. 2012-08-14 09:58:01 -04:00
Eric Dobson
cac47c0427 Make TR debug printer work again. 2012-08-14 09:45:01 -04:00
Eric Dobson
5f0717d278 Make disabling the custom printer work. 2012-08-14 09:45:01 -04:00
Eric Dobson
124707921f Remove unused old printer. 2012-08-14 09:45:01 -04:00
Eric Dobson
c9afe15f56 Cleanup TR printer to use lazy-require. 2012-08-14 09:45:01 -04:00
Sam Tobin-Hochstadt
6ae2a9d884 Fix internal require of typed submodules. 2012-08-13 17:20:20 -04:00
Ray Racine
2ff1927f6c Add flvector-copy to TR base env. 2012-08-13 16:58:29 -04:00
Vincent St-Amour
11006d3b5e Remove OC toolbar when the definitions change. 2012-08-13 16:58:29 -04:00
Vincent St-Amour
958ab7b570 Move definitions copying to its own function. 2012-08-13 16:58:29 -04:00
Vincent St-Amour
7c6cf0fa8b Fix type of division. 2012-08-10 18:07:38 -04:00
Vincent St-Amour
8e7484c44c Add log parsing tests. 2012-08-10 17:09:30 -04:00
Vincent St-Amour
93e2a74f09 Correctly parse Windows paths in Optimization Coach.
Closes PR12966.
2012-08-10 17:09:30 -04:00
Sam Tobin-Hochstadt
aa6ed4d736 Don't generate rest specification for ->* when not needed. 2012-08-10 11:00:02 -04:00
Eric Dobson
3876dfa841 Make generated flat contracts actually flat. 2012-08-10 10:39:44 -04:00
Vincent St-Amour
75efede59b Refactoring. 2012-08-07 16:33:31 -04:00
Vincent St-Amour
674c71103b Add :query-type/args.
Shows return type for a given function with given argument types.
2012-08-07 16:33:31 -04:00
Vincent St-Amour
d87339d414 :query-result-type -> :query-type/result
Result type is given, not asked for.
2012-08-07 16:31:52 -04:00
Vincent St-Amour
28c85dfd25 Add a separate "Exploring Types" section to the TR reference. 2012-08-07 16:31:52 -04:00
Vincent St-Amour
4b30d052b0 Allow multi-line printing of case-> types.
Currently only used in :print-type. Everywhere else, types are pruned.
2012-08-07 16:31:52 -04:00
Vincent St-Amour
34ee1d2603 Use type aliases when printing full types.
Reduces the printout size significantly.
2012-08-07 16:31:51 -04:00
Sam Tobin-Hochstadt
7eaae20f41 Add back some special cases. 2012-08-07 15:51:02 -04:00
Eric Dobson
21598297a7 Removed *Un from abbrev.rkt, replaced it with Un from union.rkt. 2012-08-07 15:50:50 -04:00
Eric Dobson
9ed360bb5e Removed convenience.rkt from typed racket. 2012-08-07 15:50:50 -04:00
Eric Dobson
56fd9e6321 Rearange type code, so that abbrev.rkt can depend on union.rkt.
Split out base-abbrev.rkt so that subtype is not dependent on abbrev.rkt.
Remove unused code in numeric-tower.rkt so that it is now a dependent of
abbrev.rkt, which allows the body of convenience.rkt to be merged back in.
Remove special casing for union.rkt and extraneous subtyping checks.
Remove union-maker.
2012-08-07 15:50:50 -04:00
Eric Dobson
6dbc054e41 Replaced references to abbrev.rkt with convenience.rkt.
Skipped this for subtype.rkt, because of a require loop caused by
lazy-require.
2012-08-07 15:50:50 -04:00
Eric Dobson
e6d4fb2ee2 Fill hole in recursive type soundness. Fixes PR 11372. 2012-08-06 12:31:07 -04:00
Eric Dobson
9f453676d1 Add support for creating contracts of heterogenous vectors 2012-08-06 12:31:07 -04:00
Eric Dobson
f090698542 Fix type of integer-sqrt and add type for integer-sqrt/remainder. 2012-08-06 12:31:07 -04:00
Vincent St-Amour
aba046a92d Swap unsafe and chaperone-unsafe vector ops in the TR optimizer.
Closes PR12969.
2012-08-04 10:32:21 -04:00
Vincent St-Amour
ebd2e35600 Remove accidentally added file. 2012-08-03 14:41:21 -04:00
Vincent St-Amour
1215fb6cec Remove invalid singleton return types.
NaN doesn't inhabit these types, but can be produced there.
2012-08-03 14:21:44 -04:00
Vincent St-Amour
a6d5a98b61 Include NaN in all floating-point types.
Makes more closure properties hold, but weakens occurrence typing for
some comparisons involving flonums.
2012-08-03 14:21:44 -04:00
Vincent St-Amour
b1fbbafd91 Fix type of rational?. 2012-08-03 14:21:44 -04:00
Vincent St-Amour
800a328fe6 Fix documentation for packages and mutable lists.
As suggested by Matthew.
2012-07-31 17:12:30 -04:00
Vincent St-Amour
cc8a9b5ed7 Fix type for dynamic-place. 2012-07-31 17:12:30 -04:00