Eric Dobson
a42b7a0792
Make inst fail on results that are not single valued.
...
original commit: 62ff915a56694203bd22b91d7eb69dfeba5bbc51
2014-05-13 22:59:36 -07:00
Eric Dobson
d9c7180a00
Make valuesdots subtyping not cause contract violations.
...
original commit: 2533effb2fdc02e29f149cfc55767a26ff88fbf1
2014-05-13 22:59:35 -07:00
Eric Dobson
871f8a5ca3
Abstract over dotted type in values.
...
original commit: f3fa035751dcf6cedac451f752211b65840df07a
2014-05-13 22:59:35 -07:00
Eric Dobson
8069311cf8
Make tc-lambda not internal error in poly dotted expected contexts.
...
original commit: a687415d6b56de1772620a09f85097659ac44225
2014-05-13 22:59:35 -07:00
Asumu Takikawa
4e5c49f7fd
Fix type printing for simple latent filters
...
Don't print a simple filter for a function with more than
one argument or with a filter object that refers to an outer
variable.
This matches up with type parsing.
Closes PR 14510
original commit: 9435a8f44723091cca2e28879501f922bf910d69
2014-05-14 01:35:16 -04:00
Eric Dobson
a24c4717a9
Fix return tc-results when typechecking kw lambda.
...
original commit: 46701b6983c0c3269f6f7fbfa949ab9479b57cf8
2014-05-13 09:22:46 -07:00
Eric Dobson
bbf3ab9655
Actually fix all of the contract errors in substitute.rkt
...
original commit: 79df0996fdd0b2f4e09afdc5f4d41fb739805d34
2014-05-12 08:09:26 -07:00
Eric Dobson
cfdf846d76
Fix subst-all contract.
...
original commit: 3f5bddfcbd851ec5424df34bc975844dc77c8eda
2014-05-11 21:02:03 -07:00
Eric Dobson
1c77223c58
Correctly handle moving dotted vars to the dmap.
...
original commit: 4f7a119a087656c6f3af6cfa0b6f711b4a1b0ab9
2014-05-11 17:43:34 -07:00
Eric Dobson
e882825072
Add support for 1 sided contracts on Top types.
...
original commit: d7ed73d5ac34a666633b06dbae9d623455e0972b
2014-05-11 17:17:09 -07:00
Eric Dobson
5054402414
Add explicit -Null abbreviation.
...
Also clean up many use cases of -pair and (-val null) with -lst*.
original commit: 722c4fd075dc65792860f7f8e172c96106578a64
2014-05-09 20:21:11 -07:00
Eric Dobson
fddc956333
Add comments to tc/apply.
...
original commit: 6967ec7954c4b2e8c090e4c9ec37171e20a6e726
2014-05-09 20:21:11 -07:00
Eric Dobson
aa2d32287f
Merge poly and simple function cases in tc-apply.
...
original commit: e56652bc1855dae0a3f255b4bac68140efeda74a
2014-05-09 20:21:11 -07:00
Eric Dobson
34c54f4ecd
Add match expander for all polymorphic functions. Use it in tc-apply error messages.
...
original commit: d6ef3d774c7f5fe18a0e33159c45f5c2d71f862e
2014-05-09 20:21:11 -07:00
Eric Dobson
be1e28cb5d
Simplify different cases in poly tc-apply.
...
original commit: afb3d99dc32942be34ffafdc3c114671dcc448cc
2014-05-09 20:21:11 -07:00
Eric Dobson
736a97e0b4
Remove extraneous check.
...
original commit: 976c1de96d21a61feefd3d1e4c5499e4f5a4fab3
2014-05-09 20:21:11 -07:00
Eric Dobson
6c069c38bd
Simplify poly drest case in tc-apply.
...
original commit: cee3a3f2e195556af36018660327fb86f7b86f07
2014-05-09 20:21:10 -07:00
Eric Dobson
5517b7c5a5
Simplify failure case in tc-apply.
...
original commit: 345673c9533123c4715d26e41ad18f858710045b
2014-05-09 20:21:10 -07:00
Eric Dobson
58d7473490
Pull out typechecking subexpressions in tc-apply.
...
original commit: fafe7365ae2789fec3e18f2fa9e6e66349a29ae0
2014-05-09 20:21:10 -07:00
Eric Dobson
4d318d0534
Merge different cases in tc-apply.
...
original commit: 4c2dcfaeb644e65012a3d21986f478f9549b2af9
2014-05-09 20:21:10 -07:00
Eric Dobson
3a41a532d3
Make polydotted * case in apply similar to other cases.
...
original commit: 8ab29675d64b0d8113bf44cd7de5950dc8dfda49
2014-05-09 20:21:10 -07:00
Eric Dobson
27cabe8618
Make apply of poly functions more like regular functions.
...
original commit: 362747bfcdb8ceecd36b7e40d76de671b43d46e1
2014-05-09 20:21:10 -07:00
Eric Dobson
61ceccf36b
Add tests for empty case-lambdas in apply.
...
original commit: 5e0670d87e4093a5aad9512b9b27a00915da0a31
2014-05-09 20:21:10 -07:00
Sam Tobin-Hochstadt
880ba74bc7
Fix contract.
...
First bug caught with new test. Thanks Robby!
original commit: e1ab2ffcf4f22327345b90c4d3a633bcb815e74b
2014-05-08 16:19:30 -04:00
Eric Dobson
1e707d1b68
Remove duplicate case in infer.
...
original commit: e5d4aed2fb8560e83810b4a139485ef6d5c2a0c8
2014-05-07 21:13:04 -07:00
Eric Dobson
9a392d8c09
Add cgen/inv and use it.
...
original commit: 03373d11891800aad6bae04f8ccc3fdcb6703b88
2014-05-07 21:13:04 -07:00
Eric Dobson
5609e972b2
Make cset-meet take more than two arguments.
...
original commit: c7645170e36f5431d81595d2115010fd62071c9f
2014-05-07 21:13:03 -07:00
Sam Tobin-Hochstadt
52d81a3114
Add test that runs TR unit tests with contracts on.
...
original commit: 59ee811fb3a238e0203d1a7b5baa0986810c8d71
2014-05-07 12:21:25 -04:00
Sam Tobin-Hochstadt
baf7f6ccee
Fix evaluator.rkt
to work with dynamic-require
.
...
original commit: 774afb6cafe6d547d40b20709f94a761dcf583bb
2014-05-07 12:21:25 -04:00
Asumu Takikawa
33ab9f0488
Fix registration of Opaque type alias in REPL
...
Closes PR 14487
original commit: 2bd20a652e7ae523871e165ebfcb616153d2eadd
2014-05-07 10:57:07 -04:00
Eric Dobson
59bf67e8bf
Fix check-subforms and reenable TR contracts.
...
original commit: 0ba8cd9586666ee37397b525bc4c127710e81542
2014-05-06 22:50:58 -07:00
Asumu Takikawa
129f632e04
Add docs for TR's filter syntax
...
original commit: f638247b26c35efb7cbc3f501a32781a905128f8
2014-05-07 00:25:08 -04:00
Asumu Takikawa
9d7f92fbb7
Add a syntax for some asymmetric predicate filters
...
Relevant for PR 14423
original commit: 6c97d968530421968bc34f0d641a9047c98b5225
2014-05-07 00:25:08 -04:00
Sam Tobin-Hochstadt
a98676792e
Allow TR contracts to be turned on with an env variable.
...
original commit: 3c78f7a0c8bc80efe0709b3aeaa9bd268c9ed83a
2014-05-06 20:29:42 -04:00
Sam Tobin-Hochstadt
35f1ffa7df
Fix contract syntax in unit signature.
...
original commit: c324854e0eaf7db1b1ee32bfbb553b6f0dfef32d
2014-05-06 20:29:42 -04:00
Sam Tobin-Hochstadt
c42a196f58
Fix a test error.
...
original commit: f8da26dddcfd1cca16a4b18dee713a7006385a8d
2014-05-06 20:29:42 -04:00
Sam Tobin-Hochstadt
675fed4f98
Refactor type inference to eliminate exceptions.
...
This provides approximately 6% speedup on
`racket -l math/scribblings/math.scrbl` and about
14% speedup on the `new-metrics` test.
Mostly this involves threading #f through the whole
of the inference process. There are several new
macros in `typed-racket/infer/fail` which are useful
for comprehensively using Maybe-monad style
programming in Racket. Of particular note is `%`,
which satisfies (% f e ...) => (and e ... (f e ...))
but with the obvious fixes.
This commit also weakens several contracts which
caused the build of DrRacket and/or `math` to fail
when contracts were enabled.
original commit: f83950fbab8f7c1229bc020429b269a95785ca8c
2014-05-06 14:17:03 -04:00
Sam Tobin-Hochstadt
854e86d14c
Misc minor improvements.
...
original commit: 5bd3a9ff2f22666b6f904d62bd9c810086ede4f9
2014-05-06 14:17:03 -04:00
Sam Tobin-Hochstadt
8bba85dd57
Improve TR timing, add more timing events.
...
original commit: 36ab55c1e5147e3c2e58c3cf2a92be86e5799414
2014-05-06 14:17:03 -04:00
Sam Tobin-Hochstadt
f7cdf5f1ae
Fix an unfortunate bug in Union construction.
...
original commit: beefe73f7e7b6fbb547f327e206f447e4f6815b0
2014-05-06 14:17:03 -04:00
Asumu Takikawa
4c43cfb76c
Add types for more of pict in typed/pict
...
original commit: ad8d0629f882a1fbb94f844b8fe72cbdd5dd2787
2014-05-06 12:28:40 -04:00
Asumu Takikawa
cd713a577e
Adjust TR Guide blurb, link to TR Reference
...
original commit: ca5fdbd9fa1ce92c88267128498d8ba1911cad1b
2014-05-06 11:41:58 -04:00
Asumu Takikawa
ed6ed86945
Add several examples to TR class reference docs
...
original commit: d3df30b8ee28b051d772312c6c6ef3d860a69e99
2014-05-05 18:38:21 -04:00
Asumu Takikawa
e1486afd9b
Adjust open-input-file
type for new keyword
...
original commit: 7eb94179e7fdda4e9932452d7d1b0de93bf57870
2014-05-04 12:13:06 -04:00
Eric Dobson
2f9c3f0265
Split out tc-expression to a separate file.
...
original commit: d68a1ebc35ab9c0ceea7f5e2682e503f64aba3fe
2014-05-03 15:19:56 -07:00
Eric Dobson
3c4cb45d46
Make external check be on an #%expression.
...
original commit: 6d841adb9ac822e6decd80ea00056a5724edc2bb
2014-05-03 14:44:36 -07:00
Eric Dobson
2efc8a92bf
Change ascription to annotate the #%expression.
...
Also remove the now useless type-annotation tests.
original commit: 6cd79b6b7e57d54a43140e544ac0bcb6aedd2433
2014-05-03 14:18:55 -07:00
Eric Dobson
e80df03958
Remove obsolete special casing for ann and inst.
...
original commit: 48ca13f26d1adc8315c2f340549523cf76c3b61a
2014-05-03 14:18:55 -07:00
Eric Dobson
635979b6b2
Cleanup type-ascription.
...
original commit: 32fc2b99b8929d799685ca1299255e4becba0458
2014-05-03 14:18:55 -07:00
Eric Dobson
f23e278f31
Add #%expression around annotations.
...
original commit: 49b983ca2e2e147f975923fac93e1eb48399a1eb
2014-05-03 14:18:55 -07:00