Eric Dobson
e70c2dea51
Add way for code to attach typechecks to itself, and implemented make-predicate.
...
original commit: cc52e56fe6749bba71dbae5e56c0a58d90ac119b
2012-08-20 12:39:40 -04:00
Eric Dobson
3d0e20043d
Allow contract definitions created from expressions to be fixed up.
...
original commit: 115345300dc4bfe3a14c7b7f73507719e2f6500d
2012-08-20 12:39:40 -04:00
Eric Dobson
ce51776f1f
Make TR's ignore-some property work even if there isn't an internal form.
...
original commit: bb67e37c4906334dbf43e650643d9162d195fa3d
2012-08-20 12:39:40 -04:00
Sam Tobin-Hochstadt
7654984ca6
Make Typed Racket integration tests run in parallel.
...
Parallel speedup of approximately 4x when using 8 workers on a 12-core machine.
Closes PR 12911.
original commit: 9e5060ef5b7e831480e82d45eb7459d1015f1f54
2012-08-20 12:25:50 -04:00
Eric Dobson
f41741b486
Add promise support to type->contract.
...
Closes PR13024.
original commit: 09d32d35e06abe31075bf3fbf04f6c749f3d5603
2012-08-20 10:10:17 -04:00
Eric Dobson
8c95235750
Cleanup builtin structs types.
...
original commit: a408d6bfbfacae706b8d1d51f67c7929c3fcae16
2012-08-20 10:10:17 -04:00
Eric Dobson
0277c62e46
Make promises like every other TR container.
...
original commit: df6562c1de124a01a4a104cf8f813078b12bd680
2012-08-14 16:16:07 -04:00
Eric Dobson
dc0849e298
Replaced infer-dummy with lazy-require.
...
original commit: ac493a6f44773c43c215e8c5cd5dc6d8e1edcdf1
2012-08-14 16:04:51 -04:00
Eric Dobson
a3d44f9315
Fix internal error for untyped kw functions.
...
Closes PR12932.
Closes PR12922.
original commit: 9ef80edfef0e872ec9224c5d1e032c3f46dc2ace
2012-08-14 16:04:51 -04:00
Eric Dobson
fb1c408062
Removed deprecated printf/log.
...
original commit: fdd2966cf405c5b8e877f51aeff6606816b8d9c3
2012-08-14 16:04:48 -04:00
Sam Tobin-Hochstadt
5784f96c6b
Don't special-case applications with instantiations.
...
Closes PR 13006.
original commit: ade36c36c6f68520deb15c7152cc1e49741213d6
2012-08-14 15:45:47 -04:00
Eric Dobson
37aeb62a14
Fix substitute and add test case.
...
original commit: 3b6168de7d2a0b25a40c391757bc71fdb272c347
2012-08-14 14:44:55 -04:00
Eric Dobson
f071ccf186
Make simple substitution happen all at once.
...
Closes pr12920.
original commit: 2e3965e7772594a19aac32d9673fb0c98e19bbdd
2012-08-14 14:44:55 -04:00
Vincent St-Amour
23a26e8533
Fix type of expt.
...
Closes PR13026.
original commit: f514550300624a5863db333fe781e32da3273e17
2012-08-14 14:37:18 -04:00
Vincent St-Amour
911ebaa0bd
Fix types of magnitude and angle.
...
Closes PR13025.
original commit: af8fc1f26aaf87f0ece562e6fe74804b42ddfed3
2012-08-14 14:37:18 -04:00
Sam Tobin-Hochstadt
88c5098309
Move define-struct/printer
to new file.
...
Avoids runtime dependency on `racket/generic`.
original commit: 973da6a50cd0994b69b5b8b7cb1f374786de469f
2012-08-14 10:31:22 -04:00
Sam Tobin-Hochstadt
74b6ccbf6a
Minor printer refactoring.
...
original commit: fddd5c63ff4113c104dd184b90b38900aa99b4ad
2012-08-14 09:58:01 -04:00
Eric Dobson
8442c9da34
Make TR debug printer work again.
...
original commit: cac47c0427c8d885b402d036710593cf1d360e7f
2012-08-14 09:45:01 -04:00
Eric Dobson
4667c3bb2a
Make disabling the custom printer work.
...
original commit: 5f0717d278343f355f95bbc2ca39d9a3ebbee3dc
2012-08-14 09:45:01 -04:00
Eric Dobson
9bd0589cf6
Remove unused old printer.
...
original commit: 124707921fd20aed769c250f23e5d89979e457b6
2012-08-14 09:45:01 -04:00
Eric Dobson
2f3add11ff
Cleanup TR printer to use lazy-require.
...
original commit: c9afe15f56bc7c3a6e2347f370e7d2e075ade594
2012-08-14 09:45:01 -04:00
Sam Tobin-Hochstadt
ad5018f0dc
Fix internal require of typed submodules.
...
original commit: 6ae2a9d884d46350411b023d5eb54474f4a5ed81
2012-08-13 17:20:20 -04:00
Ray Racine
6c22c611d8
Add flvector-copy to TR base env.
...
original commit: 2ff1927f6c1a0da46a7fd633cf62961e2ba06b75
2012-08-13 16:58:29 -04:00
Vincent St-Amour
b59fef3342
Fix type of division.
...
original commit: 7c6cf0fa8b43e39f88211fa35ac151616f2704ba
2012-08-10 18:07:38 -04:00
Sam Tobin-Hochstadt
1d6678c2ad
Don't generate rest specification for ->* when not needed.
...
original commit: aa6ed4d736b2e4486c82a4a1ed4ac7b1f9296a3e
2012-08-10 11:00:02 -04:00
Eric Dobson
da8782fb09
Make generated flat contracts actually flat.
...
original commit: 3876dfa8411e06b2225b614246fa0274855e915b
2012-08-10 10:39:44 -04:00
Vincent St-Amour
7acddd1b92
Refactoring.
...
original commit: 75efede59b26315cd0273427ca08a46a5b947d88
2012-08-07 16:33:31 -04:00
Vincent St-Amour
806c02c533
Add :query-type/args.
...
Shows return type for a given function with given argument types.
original commit: 674c71103b65d5ac8467433def7c4542e01985a3
2012-08-07 16:33:31 -04:00
Vincent St-Amour
3a09c5d6df
:query-result-type -> :query-type/result
...
Result type is given, not asked for.
original commit: d87339d4145ebadc70df54c5a18b6370c2b58fbc
2012-08-07 16:31:52 -04:00
Vincent St-Amour
0f24ab150d
Add a separate "Exploring Types" section to the TR reference.
...
original commit: 28c85dfd253a6e386da14758d0e95e9ecdd0a6a9
2012-08-07 16:31:52 -04:00
Vincent St-Amour
1e1fb40d32
Allow multi-line printing of case-> types.
...
Currently only used in :print-type. Everywhere else, types are pruned.
original commit: 4b30d052b0216420ef1abcec44f0c027cc588880
2012-08-07 16:31:52 -04:00
Vincent St-Amour
0b962a8f5d
Use type aliases when printing full types.
...
Reduces the printout size significantly.
original commit: 34ee1d26032f84cd67a7835b66e3bddbdce8d497
2012-08-07 16:31:51 -04:00
Sam Tobin-Hochstadt
30e80ee604
Add back some special cases.
...
original commit: 7eaae20f41e0b5bbbe90af0461e24f9aef1b2931
2012-08-07 15:51:02 -04:00
Eric Dobson
ce41c349e6
Removed *Un from abbrev.rkt, replaced it with Un from union.rkt.
...
original commit: 21598297a7dd29ce6e0a106d13326e84a7330b6f
2012-08-07 15:50:50 -04:00
Eric Dobson
3d2814de81
Removed convenience.rkt from typed racket.
...
original commit: 9ed360bb5e3fd793ac4479507852aa282125fd61
2012-08-07 15:50:50 -04:00
Eric Dobson
2009c1da8a
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.
original commit: 56fd9e63219b87d0fddbfd5d9fdb97010acd13f3
2012-08-07 15:50:50 -04:00
Eric Dobson
a81b666a5e
Replaced references to abbrev.rkt with convenience.rkt.
...
Skipped this for subtype.rkt, because of a require loop caused by
lazy-require.
original commit: 6dbc054e41af5820ceda8a50508ccf43c51ab7ed
2012-08-07 15:50:50 -04:00
Vincent St-Amour
13b06ee19a
Control number of attempts for TR random testing from the command line.
...
original commit: 7494fccc4c8af1ced3771b58515e661b2aca7f6c
2012-08-06 12:48:41 -04:00
Eric Dobson
dab83ca0b0
Fill hole in recursive type soundness. Fixes PR 11372.
...
original commit: e6d4fb2ee247cfec157175788ff29f94e6aec3e5
2012-08-06 12:31:07 -04:00
Eric Dobson
786a64de60
Add support for creating contracts of heterogenous vectors
...
original commit: 9f453676d13f4b44ee9e8d891984de38db9bdeb0
2012-08-06 12:31:07 -04:00
Eric Dobson
74f13b21f1
Fix type of integer-sqrt and add type for integer-sqrt/remainder.
...
original commit: f09069854225ccc00b9b9041fc2f26d2e83f8450
2012-08-06 12:31:07 -04:00
Vincent St-Amour
9f060f5be7
Swap unsafe and chaperone-unsafe vector ops in the TR optimizer.
...
Closes PR12969.
original commit: aba046a92d42de70a2f777bfbe9a4e75f8e935a9
2012-08-04 10:32:21 -04:00
Vincent St-Amour
642e310bbe
Remove invalid singleton return types.
...
NaN doesn't inhabit these types, but can be produced there.
original commit: 1215fb6cec8ed7e6559e279a46fc7d2be0bfd403
2012-08-03 14:21:44 -04:00
Vincent St-Amour
90741c2747
Include NaN in all floating-point types.
...
Makes more closure properties hold, but weakens occurrence typing for
some comparisons involving flonums.
original commit: a6d5a98b61c033340c66b91dd53c18ea50db8c60
2012-08-03 14:21:44 -04:00
Vincent St-Amour
5c4b0895dd
Fix type of rational?.
...
original commit: b1fbbafd91fdd64496647f0108ece7e6fed9947e
2012-08-03 14:21:44 -04:00
Vincent St-Amour
5bb888e47e
Fix documentation for packages and mutable lists.
...
As suggested by Matthew.
original commit: 800a328fe6524cc9aaac3d258d8bdeee3fca9337
2012-07-31 17:12:30 -04:00
Vincent St-Amour
c9d00530aa
Fix type for dynamic-place.
...
original commit: cc8a9b5ed79ee065bdd36c1c01cec929de054192
2012-07-31 17:12:30 -04:00
Vincent St-Amour
445524b021
Fix parametric require/typed in typed/racket/base.
...
Closes PR12951.
Please merge to release.
original commit: dd02f5eedaaea8077e36e38511e0af1998b5f94f
2012-07-29 09:02:58 -04:00
Vincent St-Amour
6b569fa82f
Move mutable list functions to the compatibility collect.
...
Mutable pair functions from racket/base are not moved.
original commit: 52439d528b78db6394798d9bdd39b2017de03a5e
2012-07-27 16:49:05 -04:00
Vincent St-Amour
2b8e955f68
Fix type for add-between.
...
original commit: b1577bd307ac1c8136630a3949755f833a8073d2
2012-07-24 16:41:52 -04:00