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
Sam Tobin-Hochstadt
cbca0b172f
Simplify fast path for typechecking simple function applications.
...
Also, minorly revise subtyping code.
original commit: b3c640870e43ead323d1ef213e39e22a515a3a6b
2012-10-05 12:12:39 -04:00
Sam Tobin-Hochstadt
280df08a4d
Fix contract-min/max base case.
...
original commit: 8bb697108e7ef3b77ecb5c6584b207fb86a6bbac
2012-10-04 16:13:21 -04:00
Sam Tobin-Hochstadt
fca69adaf7
This pattern of typed submodules exposes Racket bugs.
...
original commit: 86522a180429eb8fbf0a2066961692ee6090f808
2012-10-03 12:24:16 -04:00
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