Sam Tobin-Hochstadt
373a7e8b0e
Starting on control typing.
...
original commit: 29d54fb0d0650c62abf05729674d138c53ffefd8
2012-11-30 17:37:32 -05:00
Asumu Takikawa
c87dbd87a7
Forgot to add the test for commit b4dd3b5e1dcb
...
Relevant to PR 13209
original commit: d7163142be1b1d1d1f92bb233a1734762205e0de
2012-11-30 00:12:35 -05:00
Neil Toronto
7969c012a3
Stubbed out missing math/array' and
math/statistics' doc entries to
...
clean up build
Moved `float-complex?' and `number->float-complex' to `math/base',
documented them
Documented `flexpt1p'
Removed `samples->immutable-hash' (not covariant anyway; not going to
use hashes)
original commit: 6f1ffecc2374f2874c1942fe0558420b74cbe223
2012-11-27 18:05:38 -07:00
Asumu Takikawa
678972a806
Fail gracefully on TR struct arity errors
...
Closes PR 13209
original commit: b4dd3b5e1dcbec41512c02f947253233f8c53370
2012-11-20 17:47:13 -05:00
Vincent St-Amour
c9972ae31c
Add new versions of for/hash: and co that the typechecker can handle.
...
Based on Eric Dobson's implementation.
Closes PR13248. Closes PR13249.
original commit: 95d51fc8928145fb6f82c8c877e1efcb92432128
2012-11-20 17:45:15 -05:00
Vincent St-Amour
c797b00d02
Heterogenous -> heterogenEous.
...
Found by Ray Racine.
original commit: e2007abd7a06f5bd5ab7a5fd03180e9f2c20bc7f
2012-11-20 17:06:51 -05:00
Vincent St-Amour
c5600af371
Fix types of variable arity functions to work with 0-argument return values.
...
Closes PR13218.
original commit: d994ba19146f284809f410962e682c7293c41d63
2012-11-20 16:15:20 -05:00
Vincent St-Amour
dd27a40ad8
Only generate ->* contracts when arguments are really optional arguments.
...
Closes PR13274.
original commit: 6a7b971cd66b79e1aac0e0ea65bc59f667ef727e
2012-11-19 17:35:07 -05:00
Neil Toronto
690f54e633
Added `define-typed/untyped-identifier' to typed/untyped-utils
...
Made return types of `flvector-length' and `unsafe-flvector-length' more precise (they return Index)
original commit: ac424a73a5f3fa81d34f11585ff80b63b5cdebb6
2012-11-16 10:52:56 -07:00
Sam Tobin-Hochstadt
728e347f29
Use error-display-handler
instead of threads for multiple error reporting.
...
Closes PR 13240 (in reality, avoids the bug, but ryanc says that it's too
hard to fix).
original commit: 30e26f00cdcf9a08f076b03bceb0a9b9255151fa
2012-11-15 12:33:25 -08:00
Asumu Takikawa
f6106431fb
Fix whitespace in test
...
original commit: b4a98af3197ec0828dbe83ce835453598459bd22
2012-11-10 12:03:47 -05:00
Asumu Takikawa
fb52e98a05
Fix Custodian type
...
original commit: d22532db163bdb06007c248628c4002280817579
2012-11-10 11:12:06 -05:00
Asumu Takikawa
cf1a2c71d0
Fix a free variance bug
...
Commit ffe45ecce had introduced a regression with some
polymorphic functions imported between typed modules due to
miscommunicated variance information.
original commit: daca1c0d5b6040978b1c75d4cc822c0a3a819181
2012-11-09 01:43:57 -05:00
Sam Tobin-Hochstadt
3892d0101e
Correctly bind place?
for contract generation.
...
original commit: 0a0ac35ee6a427d3ca8341eb04a844a4ae7b8514
2012-11-07 12:21:09 -05:00
Sam Tobin-Hochstadt
dcb7dbac6d
Chars are compared with eqv?
.
...
original commit: 056c1aaff44918a4e2439aa84c6b931e1afd4473
2012-11-07 12:21:09 -05:00
Eli Barzilay
3e4bbc8394
Newlines at EOFs.
...
original commit: 14d8c8b5a5b665d03c14748e5416ec2f1753d4fb
2012-11-06 14:07:15 -05:00
Eli Barzilay
3fdc7889cb
Some "obvious" switching from racket' to
racket/base'.
...
original commit: 1c8001d174db69c57bfb0ee42e0ce75c2371e72e
2012-11-06 13:29:09 -05:00
Sam Tobin-Hochstadt
27093f1137
Typed Racket HISTORY.
...
original commit: 6f1f04f99c919bc7e877214f8bb98b5159a38e27
2012-11-02 15:35:23 -04:00
Sam Tobin-Hochstadt
2dfa34a01c
This test always errors -- belongs in fail.
...
original commit: c1cace28ec8072e77d70ccc40c27011c5f788295
2012-11-01 21:14:50 -04:00
Danny Yoo
dd38ff4d8c
adding close-eval at the end of scribble files that have a toplevel evaluator
...
original commit: dcf4d8b040f1acdc535d1542e0d7b1bb1112d987
2012-11-01 15:32:53 -06:00
Tony Garnock-Jones
4229c80060
Correct TR types for udp-bind! and udp-connect!.
...
original commit: a57e158c43b25fac9803cb1af399e53b97144df0
2012-10-31 21:42:57 -04:00
Sam Tobin-Hochstadt
1240dcfc3e
Fix binding of udp?
.
...
original commit: f2fd47905f4fe981dea4bda03fd08bd930dc63a1
2012-10-31 21:39:16 -04:00
Sam Tobin-Hochstadt
ab1005ae6f
Fix accidental use of the wrong letrec-bound variable.
...
original commit: 0e71f2d5dc58bd497a686f23c0ed0781590a3dc6
2012-10-31 21:18:44 -04:00
Sam Tobin-Hochstadt
fa259393da
Make Typed Racket name printing more deterministic.
...
original commit: 5861bf0b9fc5ff3b237619d02dc6d5eb4a55837e
2012-10-28 13:55:02 -04:00
Sam Tobin-Hochstadt
4d00c00072
Add more specific class types instead of Any
.
...
Fixes Insert Large Letters dialog. Merge to 5.3.1.
original commit: 4124c9a41b26092aa0dd7a33916fd8e080aa626f
2012-10-27 17:44:52 -07:00
Sam Tobin-Hochstadt
b299fdb71c
Formatting.
...
original commit: 7573fd7ee0f61b45dcff96d85e0cc6aab1982e6f
2012-10-27 17:44:51 -07:00
Sam Tobin-Hochstadt
45bc44e686
Flvectors and Fxvectors are higher-order if we give them restricted float types.
...
original commit: fa5846cb0c32b11e15cbfb0ca6e1fa2aadbd876e
2012-10-26 11:09:03 -07:00
Sam Tobin-Hochstadt
bde8ebbef0
Improve contract generation in Typed Racket.
...
This fixes several issues:
- `Parameter` generates impersonator contracts correctly
- `Any` handling now copies immutable data when possible
- `Any` now recognizes more atomic base types
Merge to 5.3.1.
original commit: c6dc1e6ece441a7d56c2f2229dc9c0e144f8ff6f
2012-10-25 23:31:02 -07:00
Eli Barzilay
f19e523806
A whole bunch of missing newlines at EOFs (and a few other spaceages).
...
original commit: cbfb1fdb370244c2cadcf327332f1c643d4588c0
2012-10-19 06:47:24 -04:00
Vincent St-Amour
e2fae17d73
Don't provide for/vector: helpers.
...
original commit: fd6e2bd6c5f2867a2ba1f845b3e30ea5bf1e4a90
2012-10-15 12:03:53 -04:00
Vincent St-Amour
83b5e50288
Fix type of raise-range-error.
...
original commit: 5bc108c7b108d1a9856a193f11be259fb69ad035
2012-10-14 17:19:35 -04:00
Vincent St-Amour
a1e803ad7f
Add test.
...
original commit: 326e3ba33f18a2c651b0dc8bfff388f8486fd114
2012-10-14 16:55:36 -04:00
Neil Toronto
2d549d13b1
Added typed/untyped-utils (just require/untyped-contract for now)
...
original commit: cdcf8f64327565e4665924b419468fbb9124129c
2012-10-14 16:53:33 -04:00
Vincent St-Amour
905416ec80
Document plet:.
...
original commit: aeddd7c18cebdcb12046a6491c7616cb0e4c75f4
2012-10-14 16:28:42 -04:00
Neil Toronto
66d5992c04
Added plet:
...
original commit: 9c11324cec1c6a5f3daeea6d51650747ea53a5b5
2012-10-14 16:28:42 -04:00
Neil Toronto
b3499cde19
Added working for/vector:, for*/vector:, for/flvector:, for*/flvector:
...
Closes PR13185.
original commit: 6f52be186b83fdb4340fa4eb772a3e6754050e71
2012-10-14 16:28:41 -04:00
Vincent St-Amour
9b65e0df92
More types for raise-* functions.
...
original commit: 3a8f4c24d909ea47ee1e71b79c824d8f7c12548c
2012-10-14 15:44:55 -04:00
Eric Dobson
e3905c3500
Add type for raise-argument-error in TR.
...
Closes PR13132.
original commit: d31005b380ceffce53315b91eeeff8655dd85e93
2012-10-14 15:44:55 -04:00
Eric Dobson
3239a56aee
Make expt type more correct.
...
Closes PR13170.
original commit: 788b0465497087f0da49c9b27d8266fa3e2b83d1
2012-10-14 15:44:54 -04:00
Vincent St-Amour
3349c30fab
Generate ->* contracts for functions with both optional and keyword arguments.
...
original commit: 844e898a548ea3b8fcecb97b0e59f8dcf06e0949
2012-10-14 15:44:54 -04:00
Vincent St-Amour
cc1dd45568
More float conversion optimizations.
...
original commit: 149d8535eb2988fab0bed739d375874f172db7c8
2012-10-14 15:35:50 -04:00
Asumu Takikawa
22cc8bc458
Move define/match
to racket/match
...
original commit: df594d3b3bd6924b80942323803385964e9a708b
2012-10-14 14:39:36 -04:00
Vincent St-Amour
9170637137
Only recommend dropping exactness in truly inexact contexts.
...
Please merge to release.
original commit: 758e4ff112bf83544fdfc833f454930cc0bc5322
2012-10-12 14:42:16 -04:00
Vincent St-Amour
0cf2fc6810
Recommend float-specific operations in case of unexpected complex.
...
Please merge to release.
original commit: 7d317f1e96e77ca9ce85136608b49d420ad39630
2012-10-09 16:58:04 -04:00
Sam Tobin-Hochstadt
fa5f278293
Add Frame%
and message-box
types.
...
original commit: 385246f4db7f0bbf4ecfcdc5ee8a0f7ccbfdd4a1
2012-10-09 12:07:28 -04:00
Sam Tobin-Hochstadt
cd081cf9c4
Handle contract generation for recursive class types.
...
original commit: 6945c5bfb1a807e1e2d4b6cdf50db83b0623ad1d
2012-10-09 12:07:28 -04:00
Sam Tobin-Hochstadt
cf1ae8f3b1
Allow #:opaque
and #:struct
in require/typed
.
...
original commit: 9054d0db7dee7d523b6a56a1cb68d703c3426f6f
2012-10-08 16:30:43 -04:00
Sam Tobin-Hochstadt
e119930d92
Add type for in-directory
.
...
original commit: 724aee01888fce4fe00094d74604d36d48ade923
2012-10-07 17:45:09 -04:00
Sam Tobin-Hochstadt
ba5fa2d361
Allow invoking thunks on the untyped side of an Any
.
...
original commit: 6fde63007eb0f560b1f86b4c2361d509e4240f41
2012-10-05 17:09:07 -04:00
Sam Tobin-Hochstadt
638b653967
Revamp handling of Any
as a contract.
...
The contract now has two major differences:
- It raises an error when it would have to wrap.
- It uses chaperones to delay errors as long as possible
In general, using `Any` as a type when exporting to untyped
code will now just work, unless the untyped code tries to
communicate values back to the typed side, in which case an
immediate error will be raised.
Much of the implementation comes from the membrane design
from [Strickland et al, OOPSLA 2012].
original commit: 962f2472e18356f357f026645bdcebdf3139ba29
2012-10-05 12:39:11 -04:00