Vincent St-Amour
fa90cdc1a6
Remove out of date comment.
...
original commit: 6ba0c1416e535ae13192a1ca8dff69f90a635a8f
2012-10-02 10:18:48 -04:00
Sam Tobin-Hochstadt
7ac3b4632e
Don't provide internal identifier.
...
original commit: d84631bc6f813e38e0c9fe05f681cba5027e2584
2012-09-27 18:29:43 -04:00
Eric Dobson
bc2abb42c8
Replace uses of Type? in contracts with Type/c.
...
original commit: 8a8dc66a191342ec5de1a4dc6bec3f61d3f0f54f
2012-09-27 18:10:38 -04:00
Sam Tobin-Hochstadt
43863acd36
Test for appropriate predicates for invariant structs.
...
original commit: cab90c16d5514ac4c9dff70ebcaeb3dda75e0910
2012-09-27 17:26:32 -04:00
Sam Tobin-Hochstadt
bb2afd9169
Fix define-typed-struct/exec
to pass struct-info.
...
original commit: ee4ba2e3dd18d875a7e7fb6a3a00d9fe9b222ea2
2012-09-27 17:08:49 -04:00
Sam Tobin-Hochstadt
0f2cffde42
Fix error message pattern for use of cons/c
.
...
original commit: d066a5c1d27a8c292a7c0560da08f394f9a75b88
2012-09-27 16:39:16 -04:00
Sam Tobin-Hochstadt
b0c5952bd1
Ensure that identifiers defined by struct
are registered as being defined in the correct module.
...
original commit: c07852eaf134a73cd8a147566583e75e5655c799
2012-09-27 16:22:22 -04:00
Eric Dobson
bfcd273225
Made free-variance have less special cases.
...
original commit: cf4d43c04f031dd1f0ac9811e19755707d1d9c42
2012-09-27 16:22:22 -04:00
Eric Dobson
6fcac4b7ae
Working covariant applications.
...
original commit: ffe45ecce455927fe149eee64efe126b7666cd46
2012-09-27 16:22:22 -04:00
Eric Dobson
d609666e8a
WIP on fixing free-variance.
...
original commit: 40809e768d0949453f059c94e69179378f01e8ba
2012-09-27 16:22:22 -04:00
Eric Dobson
319490772b
Split adding the struct type and the bindings.
...
original commit: e3743b446cfcf842ec5060af83078343f90afa25
2012-09-27 16:22:22 -04:00
Eric Dobson
61cc8f6121
Cleanup define-struct parsing.
...
original commit: 40236a3b267c8d9e8d44ffad752c4e6e618797e2
2012-09-27 16:22:22 -04:00
Eric Dobson
59160ba440
More cleanup of struct type registration.
...
original commit: 8ea7502c12f5752ca50878a70920ec5a5dc287cb
2012-09-27 16:22:21 -04:00
Eric Dobson
c73df4ed19
More struct work
...
original commit: d84391b6956f0eef2253d393dc9d05cf7efa5db4
2012-09-27 16:22:21 -04:00
Eric Dobson
11df3e8261
Removed cert value.
...
original commit: 626f807f00760cd32c446f66c3cc73fc485f676c
2012-09-27 16:22:21 -04:00
Eric Dobson
4165cdd780
Cleanup of tc-struct and tc-toplevel.
...
original commit: 8226b6764cf202c9c1b289416fe818f80dc7a157
2012-09-27 16:22:21 -04:00
Eric Dobson
87fa803776
Removed unused constructor-return argument.
...
original commit: d54a573494af95b807b87221f80f54f24b2033ca
2012-09-27 16:22:21 -04:00
Eric Dobson
a2b6807a8b
Make tc-struct no longer have long lines.
...
original commit: 54401182bbe3edfb5ef8675937578438a9cd58e7
2012-09-27 16:22:21 -04:00
Eric Dobson
c0e045635c
Fix -struct to use the right number of arguments to make-Struct.
...
original commit: 12233600c1355df1e9d2f29ee2469f154fc66f81
2012-09-27 16:22:21 -04:00
Eric Dobson
ecf4869b3e
Clean up contracts in TR.
...
original commit: 6fe850ce39e01ce7122f7325e020cf24133a9a45
2012-09-27 16:22:21 -04:00
Eric Dobson
f1ce0b63dd
Removed unused fields in Struct
...
original commit: 2a8512ed72c1ac029ee4c315f1963b3ebfc5fa6d
2012-09-27 16:22:21 -04:00
Eric Dobson
66ccae0e72
Make struct type contracts better
...
original commit: 745403a88e353c82ed850d7954254896cf1446f7
2012-09-27 16:22:21 -04:00
Eric Dobson
90ef1eac37
Fix type->contract on structures. Now uses struct/c.
...
original commit: 9e1cf579a434b65e484bdf937e3307bc3c9fd7aa
2012-09-27 16:22:21 -04:00
Asumu Takikawa
a27bab8502
unstable/match: add define/match
...
Match-based function definition form that supports optional,
keyword, rest-arg, and curried arguments.
original commit: 1a0a06db6262e2eb54d729389e7233927a3f3d23
2012-09-17 19:46:46 -04:00
Ryan Culpepper
88a903a791
fix bad attr reference (datum attr doesn't exist)
...
That macro doesn't seem to be used anywhere. Perhaps it can just
be deleted.
original commit: 29a9abf39454a683b0092efafdf2afb95ef0c4b5
2012-09-17 12:29:17 -04:00
Vincent St-Amour
1bdf607438
Remove TR optimizer log key, made redundant by named loggers.
...
original commit: 1975014c550011f3937ed7bb3ce511c1a5a823a9
2012-09-11 13:48:14 -04:00
Vincent St-Amour
d908745a11
Fix TR tests for new logging system.
...
original commit: ab328ea80bd460d6aeb94f3adf958e2d1c041d9c
2012-09-11 13:48:14 -04:00
Vincent St-Amour
d234a65876
Fix OC for new logging system.
...
original commit: 39100bd3e3a085b8911b9e3018c78e62dbe6d82b
2012-09-11 13:48:14 -04:00
Vincent St-Amour
2cff6508c9
Fix unstable/logging to work with the new logging system.
...
original commit: 5a24b57a9516fb781363dc8d7f4b59c16ae238b9
2012-09-11 13:48:14 -04:00
Vincent St-Amour
062d973d04
Integers include inexact single-float integers.
...
Closes PR13103.
original commit: adceb4322acbb31cfed9fdb2ab2825db46074f21
2012-09-09 15:46:29 -04:00
Vincent St-Amour
dc38b069d9
Fix types of comparisons between zero and non-negative integer types.
...
original commit: 729d154deb203490c68b4cd2cff95547f5509db9
2012-09-08 18:51:38 -04:00
Sam Tobin-Hochstadt
6d73aa7b4d
Track mutable variables across modules.
...
original commit: eed93825abcedc07570b4a185b88ad30f424cf0f
2012-08-31 17:45:11 -04:00
Sam Tobin-Hochstadt
d5b1f76319
Simplifying case-> to union is only safe for 1-argument functions.
...
Closes PR 13002.
original commit: ab5403d1ede34b3df761e82ba64f991089cadd81
2012-08-31 10:27:51 -04:00
Matthew Flatt
10d9de8b62
port position-tracking clean-ups
...
Add `file-position*', which can return #f instead of raising
an exception when a port's position is unknown. Change
`make-input-port' and `make-output-port' to accept more
kinds of values as the initial position.
These changes make it possible to synchronize a port's
position with a `port-commit-peeked' action. It's ugly,
which I think reflect something broken about position
tracking in the port protocol (which seems difficult to fix
without breaking compaibility).
original commit: b61f3f751c5dfe72869fd449ba3ff42f520d0927
2012-08-28 16:04:41 -06:00
Sam Tobin-Hochstadt
c9a754132a
Refactoring of new tc-app
.
...
original commit: 514c1c5921a83297a8f305678d95d7f2357a7180
2012-08-27 14:46:30 -04:00
Eric Dobson
933db45b14
Fix errors in tc/app-hetero, cleanup tc/app.
...
original commit: 1e15d4496e3cefc6853d1a843a13b8f11bc55fd5
2012-08-27 14:43:45 -04:00
Eric Dobson
696b463b46
Cleaned up special cases by adding macros to reduce duplication.
...
original commit: 5c7ed4a21d1c77866891b2c69fb8c152e5872fca
2012-08-27 14:43:45 -04:00
Eric Dobson
5754267aa0
Moved the rest of special cases to reified syntax classes.
...
original commit: ba7647d7e22a0c926755e6748b49a490e2a1fc4d
2012-08-27 14:43:45 -04:00
Eric Dobson
cf3cdb4d9d
Rough draft of syntax classes for tc-app.
...
original commit: dda1d6021157cfb07cefdb9aac6093d8bbbae0b7
2012-08-27 14:43:45 -04:00
Eric Dobson
274b4a3845
Add back template require.
...
original commit: 020d053e0ae00d04bf00affb4e1b97a70a39749f
2012-08-27 14:43:45 -04:00
Eric Dobson
642932cd95
Removed dependencies from tc-app-hetero.
...
original commit: 6c2be057493f8b0a18df74ee4cff22381b58eae8
2012-08-27 14:43:44 -04:00
Eric Dobson
dddd5e23cd
Remove unneeded requires
...
original commit: d8c9a581f2a25c68c8ae85a216fcf676dd8661ae
2012-08-27 14:43:44 -04:00
Eric Dobson
09e0c07537
Cleanup of tc-app refactor.
...
original commit: 7005f12f0dbb744442118d539c807c7bc2f4b003
2012-08-27 14:43:44 -04:00
Eric Dobson
543b1e3069
Moved last special cases out of tc-app.rkt.
...
original commit: 54d49d0ec163a149948d2c8337f6de66d1ec3be2
2012-08-27 14:43:44 -04:00
Eric Dobson
5871c0c182
Moved lambda special cases out of tc-app.rkt.
...
original commit: 67c7e3537b69fbccf1e30c1fcecca86f9d9ac5eb
2012-08-27 14:43:44 -04:00
Eric Dobson
30239cf42f
Moved eq? et al. special casing out of tc-app.rkt.
...
original commit: 51671fcec41828b6dc26427303c7dd8c76e07139
2012-08-27 14:43:44 -04:00
Eric Dobson
c41a752d1f
Moved object special cases out of tc-app.rkt.
...
original commit: 73bd7da049a2831d6fffac9a81c3d89d43c58975
2012-08-27 14:43:44 -04:00
Eric Dobson
78a124bfff
Moved keyword special cases out of tc-app.rkt.
...
original commit: c2ab21c5a56bb157a8129fd94b7c599600d53083
2012-08-27 14:43:44 -04:00
Eric Dobson
bd178b777a
Split out special cases for apply and values from tc-app.rkt.
...
original commit: 603442347247c55f59f95af94bc2b05d0875d827
2012-08-27 14:43:44 -04:00
Eric Dobson
536b374ec2
Move TR list special cases to tc-app-list.rkt.
...
original commit: fcb06ac43303a58a09a8ac6ce5bf9ae9d40e08d1
2012-08-27 14:43:44 -04:00
Sam Tobin-Hochstadt
2ec87e9e94
Move Ephemeronof
documentation.
...
Closes PR 12952.
original commit: 0233c5a14f5d20beb30e544bca384f61af18eeb0
2012-08-23 14:04:37 -04:00
Sam Tobin-Hochstadt
d970f11334
Remove #:transparent
to work around place message limitations.
...
original commit: b7f9c7706944216c4eb841396df53be2f413842f
2012-08-22 16:50:50 -04:00
Sam Tobin-Hochstadt
616b1c2fb6
Add -v
option to TR tests.
...
Also, print errors from serialization and place message sending.
original commit: e207f5c67df7d8ee1a6605d3ee62ba39787d16e0
2012-08-22 16:50:50 -04:00
Eric Dobson
cfe59c4980
Fix typechecking of polymorphic structs with parent types.
...
Closes PR12998.
original commit: e9f209977b5d437589265ca5e9e69c74d45b9d47
2012-08-22 16:50:49 -04:00
Sam Tobin-Hochstadt
467c46360c
Use module registry trick to slightly speed up TR tests.
...
original commit: 26a57f64202a9e4040fe495cf5d6a2ce3d79531f
2012-08-22 11:13:07 -04:00
Sam Tobin-Hochstadt
08962bd0aa
Parallelize running Typed Racket optimizer tests.
...
No speedup yet, though.
original commit: e705d4d450b1753a0c5fe8b34bb1a41c22e381cc
2012-08-21 17:47:30 -04:00
Sam Tobin-Hochstadt
33459cf564
Add some examples for cast
.
...
original commit: 71e81f9fffa682f93b82dc76c51b92606884d24a
2012-08-21 10:50:34 -04:00
Eric Dobson
faaaa1396c
Adding documentation for cast and make-predicate.
...
Also converted tabs to spaces.
original commit: 1248b32e73b380dbf43a2ffcbb1f9a54d83bf1c3
2012-08-21 10:50:34 -04:00
Sam Tobin-Hochstadt
8641817ca6
Add type for processor-count
.
...
original commit: 5fb48197037570e22d2e39eb7dbd1f3ca8721387
2012-08-20 14:49:11 -04:00
Sam Tobin-Hochstadt
48a9602d23
Don't use places for running single tests.
...
original commit: 1c275ffcc7fb79775b377340aaae3e258473a3ba
2012-08-20 14:45:50 -04:00
Eric Dobson
26b3938743
Move list-set and list-update to unstable/list.
...
original commit: 6e2e84664da60e82434f907d7274fcc88e47e11f
2012-08-20 14:45:50 -04:00
Sam Tobin-Hochstadt
2117167e8b
Fix typo detected by optimizer.
...
original commit: 4c0d605c430593562b1b29ff7c7617573220aab2
2012-08-20 13:17:50 -04:00
Eric Dobson
7f2c626c7f
Wrap generated code in #%expression.
...
This allows tc-toplevel to hand it off to tc-expr, and not reimplement
the details of annotations.
original commit: b9408e545eb72e2ef4877cd3e9909f4937ebf536
2012-08-20 12:39:41 -04:00
Eric Dobson
8086da4e7e
Add back ignore-some typechecking
...
original commit: 8545f421abfe3e4fb689e12d19ec05b109660e5b
2012-08-20 12:39:41 -04:00
Eric Dobson
20da55c55d
Add tests for make-predicate and cast, also add support for the top-level.
...
Closes PR 12939.
Closes PR 12201.
original commit: 533920480e4b9878a18febdc616429623bb58f50
2012-08-20 12:39:41 -04:00
Eric Dobson
9d60643a65
Added cast operator to typed racket
...
original commit: 553c3a4f80c094d030d11c061464529ed5741e5f
2012-08-20 12:39:40 -04:00
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
Vincent St-Amour
e7eaeaea33
Fix spacing issue.
...
original commit: cfc8fe576676de1d2834bd20fbded3e5219519ed
2012-07-24 13:48:05 -04:00
Robby Findler
e67f435938
adjust the interface reference in drracket for the new view menu
...
original commit: df4508573a32e3400bf209901fecd547ad078f1e
2012-07-21 11:34:13 -05:00
Vincent St-Amour
d9b716ccf4
Update Optimization Coach documentation.
...
Please merge to release.
original commit: ea6ba36ccb505cd8d08ca1f88d9f9aed18209e8f
2012-07-20 18:05:33 -04:00
Vincent St-Amour
3f31c7af35
Only enable Optimization Coach button in Typed Racket.
...
Other languages can access it through the View menu.
Please merge to release.
original commit: 24b314a40ade5c576912eea416a68d78e09ca01b
2012-07-20 18:05:32 -04:00
Vincent St-Amour
8dcab4cef0
Change Optimization Coach message.
...
original commit: 2e594d36068ab198662bbece0f79981779f23a0d
2012-07-20 18:05:32 -04:00
Sam Tobin-Hochstadt
460b1fe7b3
Ensure that structs don't overlap with simple values.
...
Reported by Ray Racine.
Please merge to release.
original commit: 4a90c6c1fea75fac3132de7df70e5e7e8207b311
2012-07-20 13:01:32 -04:00
Asumu Takikawa
2f6213c56f
Allow guards for impersonatable struct type properties
...
original commit: e14c5d61e95b867a95c820adec6c5b9e5f1ff9dc
2012-07-19 22:46:14 -04:00
Sam Tobin-Hochstadt
63c203c7ea
Document Struct
.
...
Merge to release.
original commit: a589d027511c3a609ffbda2efaaf394c2734c1bc
2012-07-19 10:55:31 -04:00
Matthew Flatt
f549a9e634
submodules: make .zo path stick for consistent independent loading
...
When a module is loaded from bytecode and then the value of
`use-compiled-file-paths' changes, an attempt to load a submodule
would fail, because source isn't used if the main module is
already declared, and the bytecode code is not used according to
`use-compiled-file-paths'. Make the bytecode path stick when it
is used once, so that submodule loads succeed, and make it work
even with `namespace-module-attach'.
The module-attach part of this protocol requires a change to the
API of a module name resolver: the notification mode gets two
arguments, instead of one, where the second argument is an
environment.
original commit: c8f4ac6ae47023157a337aa5e164b74439e373d6
2012-07-17 09:47:05 -06:00
Sam Tobin-Hochstadt
be30f1ae76
Use lazy
instead of delay
, as recommended by Eli.
...
original commit: 22904ef43eeb947b6435983857baa62c4533a5e8
2012-07-17 07:11:23 -04:00
Eric Dobson
9ee5660550
Fix things broken by bad rebasing.
...
original commit: 9dac995e36c99a6170a72ec9b784ca446ec17ca1
2012-07-15 19:21:26 -04:00
Eric Dobson
1be54e4cc5
Clean up of typechecking for heterogeneous vectors and structs.
...
original commit: 1df6165e9fae2213d2ebb7f70b54c35e0193782e
2012-07-15 19:21:26 -04:00
Eric Dobson
6d683c97a6
Clean up of tc-app.rkt.
...
original commit: dd078dcb950a99d267c8abdd69e7c5dd1de0ba5f
2012-07-15 19:21:26 -04:00
Eric Dobson
e02e4bbe11
Remove special cases for - and fx- in tc-app.rkt.
...
original commit: 779291c795e6370706efa34cca6af2a110727ebb
2012-07-15 19:21:26 -04:00
Eric Dobson
fd7bea8edb
Added cond-check-below
...
original commit: 8f98bb6d92aa2aa47910b9aa2cc8301b76f063ed
2012-07-15 19:21:26 -04:00
Eric Dobson
ceb8feedcc
Fix bad contract and clashing provides in TR when contracts are enabled.
...
original commit: 3dfd4c52a9ef0caeee283ed82e061ae8cab4a95d
2012-07-15 19:21:25 -04:00
Eric Dobson
d93803cdeb
Make TR compile cleanly with contracts enabled.
...
Added a couple of contracts and fixed some others up as well.
The two bugs were that with-contract was not imported, and that
subtype could be called with Values and Results.
original commit: 030e56311ec9196131e321129023c9ef21f39b32
2012-07-15 19:21:11 -04:00
Sam Tobin-Hochstadt
90e5702fb5
Properly handle quoted constants with bad expected types.
...
Closes PR 12874.
original commit: 8c659d50ede68e23f1c14e45000717c64dc0c2ce
2012-07-14 23:06:13 -04:00
Sam Tobin-Hochstadt
60b0b0faaa
Handle arbitrary recursive contracts generated from Rec
types.
...
original commit: 1dca82784b664e7640053333fec85980159cbd16
2012-07-14 22:45:08 -04:00
Sam Tobin-Hochstadt
073263527c
Improve type of values
when applied to one argument.
...
Closes PR 12846.
original commit: 2aaeec4520cb82f847fa57412b60a023ba7f3fa7
2012-07-14 22:45:08 -04:00
Sam Tobin-Hochstadt
4a2fb49431
Fix special case for expected unions of vectors.
...
Closes PR 12845.
original commit: ccf79943ab6af0655adcb3f05d13f8f131651c4a
2012-07-14 21:56:44 -04:00
Sam Tobin-Hochstadt
57358149cb
Don't shortcut simple letrec
forms that aren't lambda
s.
...
Closes PR 12841.
original commit: 2500dad8f124429fc5b035fc58add891f2bd7bb8
2012-07-14 21:36:56 -04:00
Sam Tobin-Hochstadt
c52317054a
Vector fixes.
...
- Allow indexing into a VectorTop, with result `Any`.
- Don't use special typing rules for applications when the operator
has an annotation or instantiation.
Closes PR 12887.
Closes PR 12888.
original commit: 9e097866bfcb0f2eed86993861f09ecf82b98e47
2012-07-14 21:30:26 -04:00
Sam Tobin-Hochstadt
f5de041d2c
Fix documentation of Sequenceof
type.
...
Closes PR 12831.
original commit: 49b030ac8dac84a02a8f273339eedc2ceb022e01
2012-07-14 21:30:26 -04:00
Sam Tobin-Hochstadt
b5b7c3f7ed
Mutable data at typed boundaries can't have flat contracts.
...
Closes PR 12884.
original commit: f40c7f11a6a11c9e7afe1c02b2826ebd7626edbd
2012-07-14 20:43:35 -04:00
Sam Tobin-Hochstadt
33469762b7
Parse (Struct t)
as StructTop.
...
Close PR 12903.
original commit: 546c12cf2a2205aa19b205fd45a4653e3a1d2448
2012-07-14 19:20:51 -04:00
Sam Tobin-Hochstadt
7b9857b656
Print StructTop
nicely.
...
Related to PR 12903.
original commit: 418a0c311b8b1e463f1c449f10c2b31f9b25a287
2012-07-14 18:41:42 -04:00
Sam Tobin-Hochstadt
57dea3aacd
Intern Struct
types properly wrt. identifiers.
...
original commit: 4cba6e010fab5d1c9efce484a6de76f7cf4a3c0e
2012-07-13 17:10:50 -04:00
Sam Tobin-Hochstadt
ee5584e4d5
Require binding of add-mod
.
...
original commit: e6697fe43f2ed4feac1e8e74da319a0aedb3b0d4
2012-07-13 17:10:50 -04:00
Sam Tobin-Hochstadt
b109d46e28
Use promises for current-type-names
.
...
original commit: 683f8e4e4b6f95da74b69e1587b1f1e9f77ca6b8
2012-07-13 17:10:50 -04:00
Sam Tobin-Hochstadt
60c565f64e
Fix tests for new type name declaration.
...
original commit: 2dd9a43d1b3fe4d3b64ccee5c88db4cb58d7f3f8
2012-07-12 17:41:12 -04:00
Sam Tobin-Hochstadt
1f7d88e114
Reduce some dependencies of Typed Racket prims.
...
original commit: 396b04eb8689ed918f675cbed290c0a1bfa71c78
2012-07-12 17:41:12 -04:00
Sam Tobin-Hochstadt
a6fc57ea97
Delay actual initialization of type environment.
...
original commit: 5ab3827b488cdd638da7b48ca9c52ca9aa344faa
2012-07-12 17:41:12 -04:00
Sam Tobin-Hochstadt
788e335196
Rename type-decl
submodule to #%type-decl
.
...
original commit: 775dc67a3b30686e604cf459c017320a64f128c5
2012-07-12 17:41:12 -04:00
Vincent St-Amour
fdd870efd5
Rename Performance Report to Optimization Coach.
...
The new name is more accurate.
original commit: 60a0f3b8545582df43673063b65116a0f929b415
2012-07-11 10:59:35 -04:00
Vincent St-Amour
e2f3073123
Filter reports by provenance (TR / mzc).
...
Can't easily combine with filtering by opt / missed opt, so I dropped it.
original commit: 1d084888fddb7c3efb32f82b137d1c433cb50135
2012-07-11 10:59:35 -04:00
Vincent St-Amour
3f2c9145fa
Performance Report is enabled for all languages, so don't enable it for TR.
...
Avoids duplicate buttons.
original commit: aaf7acb0347feb298670653af4373c9ff2dc7557
2012-07-11 10:59:34 -04:00
Neil Toronto
c2a4fbc734
Added sequence typecheck tests
...
Added empty-sequence type (prints funny but works polymorphically; will submit bug report)
Loosened type of sequence-andmap (can't mimic andmap's predicate type)
original commit: 392d7bfbadee8143f6ec76e965f0c4e31246695e
2012-07-10 13:22:53 -07:00
Sam Tobin-Hochstadt
6287ffe3f0
Revise type environment propagation to use submodules.
...
Each typed module now defines a submodule named `type-decl`.
This module performs the type environment initialization (along
with other environment updates) when invoked. Additionall,
every typed module, when invoked, performs a for-syntax addition
to a list specifying the submodules that need invocation.
This invocation is then performed by the `#%module-begin` from
Typed Racket.
The `type-decl` module always goes at the beginning of the
expanded module, so that it's available at syntax-time for all
the other submodules. This involved adding pre- and post-
syntaxes for the results of typechecking.
This allows significant runtime dependency reduction from the
main `typed/racket` and `typed/racket/base` languages (not yet
complete).
original commit: 6bf141513fa9387f438bb0f328f5ec67ada8f757
2012-07-10 12:49:27 -04:00
Sam Tobin-Hochstadt
29763a44d9
Remove evcase
.
...
original commit: 88f5f4c8361d990af44ea1335d03d292f2ce2c46
2012-07-10 12:49:27 -04:00
Neil Toronto
9725465b46
Added inline hint around `index?' definition; my own timing suggests 2x speedup
...
original commit: 419b59e88ea025a4d6cd2fa2cdbe62eb64529c78
2012-07-09 19:15:35 -07:00
Neil Toronto
93a0e963c7
Added types for single-value sequences
...
Fixed some printing types
original commit: 77655f9ade5733d722a22acd52b338ea00f2af30
2012-07-09 19:15:35 -07:00
Vincent St-Amour
5251b92b21
Fix type of andmap and ormap on empty lists.
...
Closes PR 12882.
original commit: dba49db078bd0684562daa469df6a8b5f8dc72fb
2012-07-06 12:28:37 -04:00
Sam Tobin-Hochstadt
39f778a891
More refactoring and reduction of runtime dependencies.
...
original commit: 20e95f8d8e5ae3ea9106cff5b271c88e9e66cda1
2012-06-28 14:34:07 -04:00
Sam Tobin-Hochstadt
88460e98dd
File splitting, dependency reduction.
...
original commit: f075ecd36e708d21c825666502290e3bb98830af
2012-06-28 14:34:07 -04:00
Vincent St-Amour
1d2a50c63e
Update types of string-join and add-between.
...
original commit: db6c2e77371e31d0bed4cc504e5c8effe42959aa
2012-06-27 11:39:15 -04:00
Sam Tobin-Hochstadt
867a992700
Fix type of dynamic-place
.
...
original commit: d346415903983e6b4b698129f8d77dcec60b4d05
2012-06-25 19:20:12 -04:00
Sam Tobin-Hochstadt
ec62a2f7c4
Remove no-longer needed require for residual code.
...
original commit: 5e26c329d609cda35e3b0b35c1e66e33282c7b63
2012-06-25 19:20:12 -04:00
Sam Tobin-Hochstadt
c762e9eb4c
Avoid requiring the printer unneccesarily.
...
original commit: 94f1cb2127b9cc630d0122b6fdc98066f364597c
2012-06-25 18:07:45 -04:00
Sam Tobin-Hochstadt
d575bd40bb
Depend only on the lowest-level place
primitives.
...
original commit: c61ed30d0b0b87d7bef9dfafe2db3af719896cb8
2012-06-25 18:07:45 -04:00
Sam Tobin-Hochstadt
5f08e63cb8
Disable unused code.
...
original commit: 08c3f784766f6bc0957fe482fcc91924952a61fc
2012-06-25 18:07:45 -04:00
Sam Tobin-Hochstadt
76f157026a
Load environments dynamically in residual code.
...
original commit: 794bfa50ecf854eb36bb2195c99202cc1a7f879f
2012-06-25 18:07:45 -04:00
Sam Tobin-Hochstadt
d6f1c0eb1b
Minor refactorings.
...
- Remove tracing requires.
- Use lists instead of sets in a few environments.
- Small cleanups.
original commit: 88ff5fee69ecf58527bb76923f4d4fd91aaa1967
2012-06-25 18:07:45 -04:00
Sam Tobin-Hochstadt
19fbb978ef
Split out some small utilities to prepare to reduce dependencies.
...
original commit: a05acfee4c1387a829972db05643375fe3fcebbc
2012-06-25 14:10:18 -04:00
Sam Tobin-Hochstadt
a80b2e0941
scheme -> racket
...
original commit: ccb724155a99705d7b3c23d9b13358ed2541555f
2012-06-25 13:39:07 -04:00
Vincent St-Amour
ae41d4e362
Add #:unless to the for: macros.
...
original commit: 972df7c89ed7951eef00af00fd1b9a5bd851206a
2012-06-25 13:38:51 -04:00
Vincent St-Amour
1ca5a51ce2
Update type of string-join for its new keyword arguments.
...
Closes PR12866.
original commit: b1ad108759d05a85a04f7220bb79e2b70156aaf9
2012-06-25 13:05:46 -04:00
Vincent St-Amour
d398754fef
Reconstruct let bindings in the right order when unboxing let.
...
original commit: a0d55d4ab82bd700a191720edfd5506692a8851a
2012-06-22 17:53:43 -04:00
Vincent St-Amour
d2e69a68dc
Add type for range, and extend in-range's.
...
original commit: ee142047f801da2cac93b681c368921e8f2a2541
2012-06-22 17:53:43 -04:00
Eli Barzilay
dcffc90c3f
Random pickiness.
...
Spaces at EOFs, indentation, etc.
original commit: 7d6e79023cf9872e6f6af2f89961b742c6296f1d
2012-06-22 12:00:48 -04:00
Vincent St-Amour
4b21740591
Recover from any failure when attempting to prune types.
...
original commit: 4d5bc17f8569a54e1e37501516136637d8405f94
2012-06-17 23:28:50 -04:00
Vincent St-Amour
1477b41df6
Extend time-apply to work with procedures with more than 2 arguments.
...
original commit: 24b6ecf2a6ea0cd444a38519c210bad669804b0f
2012-06-17 23:04:47 -04:00
Vincent St-Amour
fe7589c807
Fix possible-domains on functions with multiple return values.
...
original commit: a5f2ca8fb07f92076020053fc6053a5f6808308a
2012-06-17 23:04:47 -04:00
Vincent St-Amour
ac527c5d30
Disable debugging printing.
...
original commit: da897a2f857e2ff3585ad946a1ca7325ab0ea9c7
2012-06-16 18:28:01 -04:00
Sam Tobin-Hochstadt
9c7c233e9d
Handle submodules in Typed Racket.
...
original commit: 39e014bc55779699cc3a503dd9b7416c9f7d28a6
2012-06-16 22:08:06 +08:00
Sam Tobin-Hochstadt
85926af92d
Don't export internal names for define & lambda.
...
original commit: a929bb21fc044da94bf82a909e1ccb494ec2e917
2012-06-16 22:08:05 +08:00
Asumu Takikawa
3c387528e2
Fix TR optimizer test
...
(round to avoid FPU sensitivity)
original commit: ab0d3d64926701cf6fab81c4f0c14348ab9c2b97
2012-06-14 18:22:42 -04:00
Vincent St-Amour
66edd8c2ba
Unbox exp on complex numbers.
...
original commit: c4613cf9ab353aa9cb52d50e3aaea467846e18c9
2012-06-14 17:17:03 -04:00
Vincent St-Amour
9d813f495f
Fix type of exact->inexact.
...
Closes PR 12803.
original commit: cff1cd3c6395007facff39e421f043b71cccd1d8
2012-06-12 11:09:20 -04:00
Asumu Takikawa
8369a85392
Fix typo in TR special form docs
...
original commit: c108fe5c6a855ecd815d1006d27f863c9ad840a7
2012-06-11 17:29:02 -04:00
Vincent St-Amour
90909c1c68
Missed some cases in sqrt.
...
original commit: 948a4d6184751bacabb44adad39d9fb5aa804988
2012-06-09 22:11:42 -04:00
Vincent St-Amour
a8d6407857
Restore testing of sqrt and log.
...
original commit: c4743724cda112cf051d287764aa21f1e7469665
2012-06-09 22:07:43 -04:00
Vincent St-Amour
b64696f560
Fix type of fl/ to reflect changes to /.
...
original commit: 53746ca0a5b5a959bf272ee8a88e8c3c9dbd3e8b
2012-06-09 22:07:03 -04:00
Vincent St-Amour
11b0166100
Subtraction is not commutative.
...
original commit: 5d26fd10e64d792d033b93faad30245ad1d5090a
2012-06-09 22:04:43 -04:00
Vincent St-Amour
58da9ff90f
Fix typechecking of Single-Flonum-Complex literals.
...
Closes PR12840.
original commit: 442def0b0f87888fe7cb38c40e33df62f3de68e6
2012-06-09 22:00:27 -04:00
Vincent St-Amour
4e9783b436
Be more conservative about returning Float-Complex and others.
...
original commit: 7191ef5c744fc6ebc95a225913516e075a1bf151
2012-06-09 21:57:01 -04:00
Vincent St-Amour
dcf7827d6b
Improve handling of NaN in division.
...
Closes PR12838.
original commit: f3f5abd1f796ffe5f678e605aa1d8bc7e6e52500
2012-06-09 21:32:37 -04:00
Neil Toronto
7f9aef2321
Fixed erroneously imprecise type for +nan.f literal (now Single-Flonum-Nan)
...
Types for nan?, infinite?, pi.f, exact-round, exact-floor, exact-ceiling,
exact-truncate, degrees->radians, radians->degrees
Extended tc-random-testing: generates exact integers and rationals now
Fixed types of sinh, cosh and tanh to account for underflow and NaNs
original commit: 8f840bd07b28ac9bff22c2fa728fb16a9857cdb4
2012-06-09 17:46:04 -06:00
Vincent St-Amour
4b1a1cacd4
Fix type of n-ary * to handle NaN properly.
...
original commit: 0f346601f45409f29d44d2847a7048e37272057c
2012-06-06 18:26:51 -04:00
Vincent St-Amour
da7663f386
Fix flonum and single-flonum operation types.
...
Most issues were found with random testing.
original commit: 48f47f33843b21d30a556b16306a6fc1550f6de7
2012-06-06 18:26:51 -04:00
Vincent St-Amour
4b7740ce00
Fix generation of random floats in TR random testing.
...
original commit: 0b7eaf56cac535fcbc3a814516fc9960ee3dc18f
2012-06-06 18:26:51 -04:00
Vincent St-Amour
1e4b2b26aa
Fix comment.
...
original commit: 3e9b527bd03e054c01ecc1242f86c89949c0497b
2012-06-06 18:26:51 -04:00
Neil Toronto
2588094087
Added nan?, infinite?, degrees->radians, radians->degrees, exact-round, exact-floor, exact-ceiling, exact-truncate to racket/math
...
Altered TR's random arithmetic testing to generate single-flonums and very small flonums; fails now because of erroneous types
Fixes to sgn, sinh, cosh, and tanh:
* preserve single-flonum-ness
* correct zero sign (-0.0) for negative return values that are smaller than epsilon
* correct behavior with NaN and infinite inputs
original commit: a713ca8a8b6c7aed987e80d0621484e68bc3c6f5
2012-06-05 22:40:44 -06:00
Sam Tobin-Hochstadt
a93d6734ac
Repair failing test case (wrong expected value).
...
original commit: 2b9912ea9f0b41d30febde846f46901641410c7c
2012-06-04 17:02:19 -04:00