Commit Graph

4331 Commits

Author SHA1 Message Date
J. Ian Johnson
d9df3d9360 Fixed support for valuesdots with let/ec.
original commit: d35f41728c283ef04b913a7e2979cc952903652d
2014-07-09 09:47:25 -04:00
J. Ian Johnson
d8d8825d32 Generalized types for ((call)|(let))/[ec]c to allow n-ary continuations.
original commit: 878d4cfb4db64a69195dac6e3402e566d62946e1
2014-07-09 09:47:25 -04:00
Asumu Takikawa
796047003b Check function depth for parsing object indices
Closes PR 14509

original commit: e62f1cb8d9faf2247d48ce0d079a7ccbda04228a
2014-07-07 19:18:06 -04:00
Asumu Takikawa
0c19e550eb Remove debug lines and commented cases
This helps for editing in paredit

original commit: 65368108e10fdf35c6140060a3cec5fe56649f7d
2014-07-07 15:30:30 -04:00
Eric Dobson
5dcc64bb83 Add code to handle when the test expression is neither true nor false.
Closes PR 14564.

original commit: e5695309151b123d8c7d98bafb71b7d317daa76e
2014-07-07 09:19:47 -07:00
Eric Dobson
39d19e7c17 Make error messages better for function types with bad filters.
Also makes it so filters are not parsed as keyword types.

Closes PR 14492.
Closes PR 14520.

original commit: 0142549750993b72c1debf4fe109b1c9e1bd9019
2014-07-07 09:08:50 -07:00
Eric Dobson
917b4edd38 Make filters on mutated/undefined vars an error.
Closes PR 14422.
Closes PR 14495.

original commit: fdd76794265c752492832b1f91a20ce96ac61930
2014-07-07 09:05:51 -07:00
Eric Dobson
3bd0efe03e Make parse-type raise the right error for incorrect use of ->.
original commit: 75310338dc4bcbf0060d2cb47eff122fd45dd426
2014-07-06 20:53:58 -07:00
Eric Dobson
eae6a6aa77 Add docs about optional type annotation to let/ec and let/ec:.
original commit: eb8c2d33b1097309a46e1a13c665fa50bf52f980
2014-07-06 20:26:19 -07:00
Eric Dobson
42492cc787 Add omit-define-syntaxes to secondary form of define-type-alias.
Closes PR 14505.

original commit: 64a653696cba5f4c24a3b64caa8182e84891b04b
2014-07-06 18:48:35 -07:00
Eric Dobson
cb71403e77 Add test for pr14567.
Closes PR 14567.
It seems that this has been already fixed.

original commit: 4aef86ce4fc74116475945c5a6ffb9348e1c65fe
2014-07-06 17:19:59 -07:00
Eric Dobson
081078b1bf Make with-type disarm/arm the body expressions.
Closes PR 14587.

original commit: 7ba4e1a8c1461463ee801c32d929f82c0c207aa6
2014-07-05 17:59:34 -07:00
Eric Dobson
df084d4a10 Fix typechecking of list* with no args.
original commit: ab92f38f3b309bbee84999aee29a113e4259538c
2014-07-05 16:55:31 -07:00
Eric Dobson
2f4a9a73d5 Make tc/funapp follow contract in error case.
Closes PR 14615.

original commit: 13bc779e2106586b87d4110b7851584a129675b4
2014-07-05 16:34:02 -07:00
Eric Dobson
2e973f3f26 Cleanup type-env-structs.
Removes all unused functions and cleans up the remaining ones to have
more consistent and simpler APIs.

original commit: 0f5931f093477cd2d4ea6571a4bd56255c9692bc
2014-07-05 11:36:23 -07:00
Eric Dobson
c512fe389b Improve triggering for generalizing lists.
original commit: 46b07db77bd8fe9c78388df827e617ad3837e13d
2014-07-05 10:09:14 -07:00
Asumu Takikawa
5cb96eff46 Fix `possible-domains' function in TR internals
This fixes type error message generation in some cases
and also the `query-type/result` command on multiple
valued functions.

The latter still does not allow multiple return type
queries (TODO) but it won't crash now.

Closes PR 14493

original commit: 881d5de9a0202f09fb5ff8baedcf75b13fa5c294
2014-07-03 17:25:05 -04:00
Asumu Takikawa
5f3ed34764 Improve error for applying vals of Procedure type
original commit: 6629c999d180b9af217501db79adaf0208c7b160
2014-07-01 18:16:21 -04:00
Asumu Takikawa
1ff78cbce4 Document other TR wrapper libraries
original commit: 316e51835a503ebd9699731a9a973d238f126794
2014-07-01 16:01:04 -04:00
Stephen Chang
d46cfbdf22 add @history[] notes for typed/racket/async
original commit: 3da81b52788b29456910fcccb3cb92194e84a28b
2014-07-01 14:04:31 -04:00
Stephen Chang
8eb5c1114f add version numbers for TR pkgs
original commit: 2dc59f7d6b0eee1c507175128a68b6c571da265c
2014-07-01 13:25:54 -04:00
Eric Dobson
10a4412490 Merge V, X, and Y arguments into a single context in infer.
original commit: 615776f8d1feb3d761f0dbf97ab0e14f61eff51b
2014-06-30 21:10:37 -07:00
Eric Dobson
d3705800c3 Do not add filters to the prop environment.
original commit: 3ba607542c31e02e816801185d7f323d38bfe760
2014-06-30 21:01:33 -07:00
Eric Dobson
d035fd0f3e Strengthen simplification of filters in tc-subst.
original commit: c2e706277bd09e5c328fd598fcc67e179041ec83
2014-06-30 21:01:33 -07:00
Eric Dobson
4290c9bd2f Improve filters generated for true values in tc-id and tc-let.
original commit: 76f9175fc3b981ec3a76d1c94b87bf8093fc78d0
2014-06-30 21:01:33 -07:00
Eric Dobson
714b4671e0 Make overlap for procedures and simple data stronger.
original commit: 0c187c52b70bc8a95b90b0edaaf2cb279fe3d5d5
2014-06-30 21:01:33 -07:00
Eric Dobson
0f1edd59f1 Make -id-path handle mutable variables correctly.
original commit: 6b69c396f40f825d194bd1253f58d6a7e5c7fd64
2014-06-30 21:01:33 -07:00
Eric Dobson
d256997fe6 Fix inference of two recursive types.
Closes PR14608.

original commit: e9899a07a6a8c871b5a9a0df7597bed3b4ff205a
2014-06-30 20:59:37 -07:00
Eric Dobson
d0d9bef5a9 Make union simplification not happen during subtyping.
Union simplification calls subtype, calling subtype during subtyping is
slow so we want to avoid it.

Closes PR 14582.

original commit: cfe35fa0a4c035b07343ad3318c0082e507405a3
2014-06-30 20:50:23 -07:00
Asumu Takikawa
5e4b80b498 Remove wrapping in typed/racket/async-channel
Now that TR supports contracted functions, the wrapping
is not necessary.

original commit: 864cda26145ea0503a0874a56d49b2696b2c1e17
2014-06-30 14:50:28 -04:00
Stephen Chang
8a23f10c47 fix async-channel static contract in TR
original commit: b7814e7eb1dc761e15268df8295784e10bd9c415
2014-06-30 10:50:02 -04:00
Eric Dobson
70567e3458 Replace procedure-rename with eta-expansion.
Closes PR 14612.

original commit: 393d7d49fc6c051bdcf1b221979b856747898cf2
2014-06-29 23:25:05 -07:00
Eric Dobson
6031c0697b Make TR contract generation not wrap everything in recursive contract.
Eta expand struct predicates, as this was the reason for recursive
contracts in the first place.

Closes PR 14611.

original commit: 72d11286042959e8e7103bf23a1ab7a2970bd8b8
2014-06-29 23:24:34 -07:00
Eric Dobson
b534242051 Add tests for generated syntax of static contracts.
original commit: decc3c63761bc044f2e9f33dfd7a0b5c2599126c
2014-06-29 16:01:33 -07:00
Eric Dobson
7c7bee754a Change make-predicate/define-predicate to use flat-contract-predicate.
Closes PR 14610.

original commit: b10cb6d089e3c26d08ac13fc4ea0039cbc475a26
2014-06-29 16:01:33 -07:00
Vincent St-Amour
69ae8fbf6c Have TR log regexp operations that use non-regexp patterns.
For consumption by Optimization Coach.

original commit: 13f1565f4d7f20128a8a72c6878a99f540ed0a4c
2014-06-29 14:41:23 -04:00
Asumu Takikawa
558e237713 Fix TR test regexp
original commit: 2edb73bff836b47caee2e2db4290daf36a7e0160
2014-06-27 02:47:17 -04:00
Asumu Takikawa
b2010f3842 Fix for/fold typechecking on null accumulator
Closes PR 13259

original commit: 0b3b1f5d9469da8990517dc11d7e63a7302d7966
2014-06-27 00:08:28 -04:00
Asumu Takikawa
4a7c6241fa Add types and tests for racket/format
original commit: fb6f53566969f729e59191a540e8bdc588819470
2014-06-26 15:46:09 -04:00
Asumu Takikawa
bd3eb045b0 Add support for typechecking contracted functions
original commit: f844cb8b920574c6bb66e178f5b1b5fbac8f5575
2014-06-26 15:46:09 -04:00
Eric Dobson
0e9de12d91 Initial internal Typed Racket documentation.
Still needs to be scribbled, and have lots more added.

original commit: 29bb045942af08889ab6088ffb0ec0ae8d6d4ac3
2014-06-26 15:42:14 -04:00
Asumu Takikawa
7f44bfec8b Fix error for application Procedure type values
Removal of top-arr in the internal representation changed
the error message and we didn't have a test for it.

Closes PR 14601

original commit: 9a14c9c4206671d9627b5a7bbc48b76e9f95526e
2014-06-26 01:35:32 -04:00
Eric Dobson
671ad37a5b Make Unions of function typechecking work again.
original commit: 5339cbaac99fe8620436846a5ba696157646be1c
2014-06-25 09:05:26 -07:00
Eric Dobson
67294c2a5d Make tc-lambda-unit have one centralized definition of how to extend the environment.
original commit: b6e96f0bf0c35a20dec955992a5ed68e8e792c8b
2014-06-24 22:39:09 -07:00
Eric Dobson
8238d2a6bd Move logic of numbering rest/drest arg to abstract results.
original commit: 3c179e021720addc3bd33f98ac1b09a922b25201
2014-06-24 21:52:21 -07:00
Eric Dobson
4806d40f0e Remove unused kw field in lam-result.
original commit: db02f2198e1c41871dd7823be6c8b2635d7cd0ee
2014-06-24 21:52:21 -07:00
Eric Dobson
0a46a27893 Fix infer dotted cases when there are constraints on the dbound.
Closes PR 14593.

original commit: 2f7cb68aeac2de4a463ea58945e2826848ef9f54
2014-06-24 21:35:18 -07:00
Eric Dobson
fe296a8c4d Make interning work on Rep-seq for Reps with complicated fields.
This gives ~3% improvement in new-metrics.rkt

original commit: 8fb166d67fa6378c90b2cd5e30c0fcf35d330dd4
2014-06-24 21:28:21 -07:00
Stephen Chang
334d9975df add typed/racket/async-channel
original commit: 500745f41b53690e2011571c80b0e7526e3d1355
2014-06-24 18:16:14 -04:00
Eric Dobson
f55296aa2d Add equality operations for Reps.
This speeds up microbenchmarks by 50%, and new-metrics.rkt by 30%.

original commit: 5cf65e28fc23b371f6c70ddeef5ffbc9dcdec3eb
2014-06-24 08:19:06 -07:00