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
Sam Tobin-Hochstadt
043c510ece
Document new TR aliased definitions.
...
original commit: 42a2ac6026b1f8b048765299ff19db60e6289547
2012-06-04 17:02:18 -04:00
Sam Tobin-Hochstadt
8149914d6b
Whitespace fixes.
...
original commit: 1801efe66afa21797be3a5efe92bc18975dd5a8f
2012-06-03 10:50:18 -04:00
Sam Tobin-Hochstadt
b4a0b7e8b2
=
can equate values with different types.
...
Closes PR 12804.
original commit: cbbd889621d1376ac5bd17080daa6884b88afffb
2012-06-03 10:50:18 -04:00
Sam Tobin-Hochstadt
9e926d2009
Improve type of identity
.
...
Closes PR 12813.
original commit: 8459c22c0106b1dd31531f5dbbfd1ce1e7d65fed
2012-06-02 18:52:18 -04:00
Sam Tobin-Hochstadt
0a13467456
Support definitions of keyword functions in Typed Racket.
...
Caveats:
- keyword function definitions do not define static
bindings, thus limiting optimization opportunities
- can't use `define:`, `lambda:`, etc with keywords
- error messages sometimes expose the implementation
- the optimizer skips most of the generated code for
keyword functions definitions (user-level code is
optimized)
original commit: 865a2cdcbd3e4eea748e57859c846c0f7ffd61ad
2012-06-02 18:22:07 -04:00
Sam Tobin-Hochstadt
5106b5672d
Remove testing code, and failed experiment.
...
original commit: c8380b94e54180a3a0e03f618e21192ecca3950f
2012-06-01 20:08:37 -04:00
Sam Tobin-Hochstadt
b12f0ba53c
Use the new syntax properties for checking keyword functions.
...
Previously, some hacks were used to obtain the internal
identifiers that implemented keyword functions directly, and
give them types at startup. Now, the primary "function"
(eg, `sort`) is given a type, and when used, the residual
syntax properties are used to find `sort` from the real
functions, and then the type of the real function is computed
from the type of `sort`.
Some creativity was required in the types of functions which
take optional arguments that when present, alter the return type,
such as `regexp-match*` and `file->list`.
original commit: a377c4235743296e337db64341c8518fc7dce965
2012-06-01 18:37:02 -04:00
Eric Dobson
0d84d3cbc4
Redefine Boolean as (U #t #f).
...
Closes PR 12815.
original commit: 262ecc3da9e20a3f3bc20e16c93f9f1f45f0deda
2012-06-01 10:26:10 -04:00
Eric Dobson
ad27327bae
Attach struct info to constructor for polymorphic TR structs.
...
Closes PR 12806
original commit: c2d9f7ed9a3839b6ec36c21e984600c812b90414
2012-05-31 13:09:26 -04:00
Eric Dobson
c07bd9c067
Add support for multiple provides of the same identifier in TR.
...
Closes PR 12807.
original commit: 735b84b08310c44933cd5235719cb7f4a647a1c6
2012-05-31 10:02:03 -04:00
Vincent St-Amour
55c8f085d1
Improve some Performance Report messages.
...
original commit: 4ad700021b6194c4903eb8e13052772ca73b86bd
2012-05-30 16:25:33 -04:00
Vincent St-Amour
2b2592d811
Reduce random testing attemps to avoid DrDr timeouts.
...
original commit: 3062efe47f3f4d72b30dd7bea280bdf7fd06c2d1
2012-05-26 11:06:29 -04:00
Vincent St-Amour
c01818f6b2
Add random testing script for float types.
...
original commit: 142158c0cbd325891be6f039651673805c461077
2012-05-25 17:15:22 -04:00
Vincent St-Amour
8809e0d75c
Fix NaN and inf handling in flonum specific op types.
...
original commit: 186b4632175c516e1167191dd8bf379a813b959c
2012-05-25 17:15:22 -04:00
Vincent St-Amour
7ef2431be4
Fix handling of NaN and infinities.
...
Most of these were found through random testing.
original commit: ebcc6d211a1108de602470540874681cd6b91443
2012-05-25 17:15:22 -04:00
Vincent St-Amour
0bcd0481a6
Add reminder that unsafe-flexpt is currently the same as flexpt.
...
original commit: b6a7a0c50582d1199f4246f6cb9606c02b23c556
2012-05-25 17:15:22 -04:00
Eli Barzilay
96d373e278
Drop the now-redundant " " argument from existing uses of `string-join'.
...
original commit: 6318df82e5f3b717c6e6c221b816232454fb9378
2012-05-24 10:40:20 -04:00
Asumu Takikawa
ece68f93e3
TR: Fix type-checking of hash literals.
...
original commit: abf9223203d373840adb4bba0495dac7aa422517
2012-05-23 15:49:38 -04:00
Vincent St-Amour
8fdb647233
More precise type for flexpt.
...
original commit: e786149434633b802f1c880799ad5d27b2361112
2012-05-08 11:42:21 -04:00