Commit Graph

4320 Commits

Author SHA1 Message Date
Vincent St-Amour
724cd37520 Don't splice in vector creation when optimizing vector-length.
Closes PR13788.

original commit: d9264525bd823052cd456df0caa900eac2d87ed3
2013-05-28 11:57:00 -04:00
Asumu Takikawa
60f3bcbc46 Fix broken internal error
original commit: e6503c5df67327dd3d607b8197e99e6b619ba4b3
2013-05-27 11:34:43 -04:00
Eric Dobson
222c57e023 Minor whitespace fix.
original commit: b9b1eb14ba04b164567648b211690343fe342b2b
2013-05-25 18:09:47 -07:00
Eric Dobson
d27d91a4fe Make scoped type vars work only for explict Alls and annotations.
Solves major issue disscussed on PR 13586.
Closes PR 13622.
Solves issue when typechecking lambdas with types like (All (a) Any).
Closes PR 13596.
Closes PR 13539.
Closes PR 13703.

original commit: 01a88f8db11be5769c83f5dc561c9afd0df3c378
2013-05-25 13:01:02 -07:00
Eric Dobson
f994980176 Add a test which times TR module loading.
original commit: 803f1db884590511629f79869a801086cb47c2e0
2013-05-24 20:42:01 -07:00
Asumu Takikawa
9d0900650f Document :type better
original commit: a40a1341f6bae61c0a8c5660182080003fae7c70
2013-05-22 09:31:37 -04:00
Asumu Takikawa
d137353dd3 Expend printing fuel in all branches
This makes (:type (Number -> Integer)) produce
(Number -> Integer) instead of expanding at the first name.
Combined with expansion cues, this makes it easier for users
to expand the relevant parts of types.

original commit: 34aeaee67293be2cc8ffbda4973aeab639cc4da0
2013-05-21 11:19:49 -04:00
Asumu Takikawa
9dd04f86cc Cue user about unexpanded type aliases
This tells the user that more type aliases are
available for expansion. For example, (Listof Number)
has the alias Number still unexpanded into the union
that it represents.

original commit: 19c5d3eaadb3a25e99684a553e8facbb05e20946
2013-05-21 11:19:02 -04:00
Asumu Takikawa
a8646d8a7a Add a #:verbose option to :type.
This prints the old way, expanding all aliases inside the type.

original commit: 1f5b262f6d5c048bf546e7b048ab342de29b27d7
2013-05-20 16:14:23 -04:00
Asumu Takikawa
9785e026b3 Cut off type printing with :type at one level
Makes types print nicer with :type in most cases.
Previously, the printer expanded type aliases as much
as possible. Now, it defaults to a single level of expansion.
A later commit adds a #:verbose option to show the entire
type.

original commit: fd33584b6f7198f9557f827d5422a16fcc0e8315
2013-05-20 16:14:14 -04:00
Asumu Takikawa
ee4be88f8b Fix parsing of (Struct ...) types.
This was a regression that appeared in 5.3.1

original commit: 3eb4a75613ef819cf58504cb7f8b7cec62eb3f7e
2013-05-19 20:32:32 -04:00
Asumu Takikawa
c478e881c0 Clean up unit tests
Remove #; comments because they break paredit. Enable some
commented tests that should pass.

original commit: c2672dd6c9a08b2dd2f40b66d641d9841ab0527f
2013-05-18 10:17:50 -04:00
Asumu Takikawa
4759646974 Fix regression for (begin) and simplify
original commit: 23d39a99689dece630f75e01463466e6bd6b5b3b
2013-05-17 00:33:10 -04:00
Asumu Takikawa
ddaf1b7825 Avoid doing the 2nd pass twice at the top-level
Thanks to Eric for pointing this out.

original commit: d7f29d3636e49fa2987e71f9fe4a3b1ace05dd09
2013-05-17 00:02:06 -04:00
Eric Dobson
d458037de6 Massive cleanup of requriements in TR.
original commit: f332affa5ad8816caf1ca59dbb7e7e9017ca999d
2013-05-15 23:18:29 -07:00
Eric Dobson
4326fc15c2 Clean up lam-result.
Make drest a list instead of a pair, replace an int-err with a match error
which has source location, and remove static name for rest argument in error
case.

original commit: 4fcda73adfa2529b5ff90ff33ae948b9fccc061a
2013-05-15 21:12:54 -07:00
Asumu Takikawa
be29737ef1 Whitespace and comment fixes
original commit: 09cf079453a162bb742ee7d44e1295ccc34934e9
2013-05-14 15:25:44 -04:00
Asumu Takikawa
f865e1501c Refactor to reduce right-ward drift
original commit: e0cff038c8e086add98f996d343bb49c60c3e3c0
2013-05-14 15:25:44 -04:00
Asumu Takikawa
7afeada73d Make require/typed work at top-level
Closes PR 13747

original commit: 67beb11cf69ac827f35e8cdc9af7cbae3c34bbe4
2013-05-14 15:25:43 -04:00
Asumu Takikawa
a9a79c0e4a Fix tc-toplevel-form for ignored syntax
original commit: 2c042998b9e8d6a62cd9a3ad4c7d576a6a3b052e
2013-05-14 15:25:43 -04:00
Vincent St-Amour
e8ce1afc29 Fix test for TR's for source locations.
original commit: ab5075bc762356f86bb7dfd34dac8d24ada1a140
2013-05-14 12:04:15 -04:00
Vincent St-Amour
7bd409e927 Fix source locations for TR for.
original commit: 8638a661ccd890912e3b9df6a39b628230f38127
2013-05-14 10:35:19 -04:00
Asumu Takikawa
f6230841c0 Make define-type work at top-level
Closes PR 12913

original commit: f3e6276f9b2e0a50d54cc83ba05dcf670b5146da
2013-05-13 17:14:22 -04:00
Vincent St-Amour
02bc10ef98 Limit memory in all sandboxes used by the TR random tester.
original commit: a857256c778e920301f4765f2cac6e79cf16b240
2013-05-13 16:46:00 -04:00
Vincent St-Amour
88ddace934 Fix type of sinh.
Found using random testing.

original commit: 5de08f06b4d254d4816b8e8320fd339be5c78038
2013-05-13 16:46:00 -04:00
Asumu Takikawa
52fd460618 Remove debugging instrumentation
original commit: ec8e126a90acfb71e335351261c9227ec3cf4d14
2013-05-10 15:43:11 -04:00
Asumu Takikawa
826c793324 Add tests for commit e53b0858c32b845482
original commit: ae7741fe60c29fab381e3bd1a84c94d659bcf53b
2013-05-10 15:42:41 -04:00
Eric Dobson
1b953365ea Cleanup tc-lambda-unit.
original commit: 2a94ca90300373e3da6f5f45a198bf18b64a1857
2013-05-08 22:59:40 -07:00
Sam Tobin-Hochstadt
6947e1d558 Refactor subtype.rkt not to use exceptions.
Matthew suggests that using exceptions for failure
in the implementation of `subtype` is a performance
problem.  This commit removes all use of exceptions
for failure in subtype.rkt, replacing it with the
standard Racket #f/value option.

Extensive use is made of the `subtype-seq` form,
which is basically do-notation for the subtyping
monad.

original commit: a6f110893f988b9e5d2b0899c7389da1d9a17365
2013-05-08 15:25:02 -04:00
Sam Tobin-Hochstadt
8824502b79 Add contract for seen parameter.
original commit: da3f8f8ec0a8389dad070700708e6915805aa3e2
2013-05-08 15:25:02 -04:00
Sam Tobin-Hochstadt
db1dc2104f Remove contract on unit-exported definition.
original commit: a07cdf39ffa5e91bf4f44d6eb11cf8092c6c24bd
2013-05-08 15:25:02 -04:00
Vincent St-Amour
983b94994f Fix type of tanh.
Found using random testing.

original commit: 89f9b860cdcbdc8f401ac92436d3c17f98eda35d
2013-05-07 17:06:35 -04:00
Eric Dobson
1c4fa12acd Move tc/send to new file because it doesn't belong in tc-expr-unit.
original commit: 8db95d007a09b0ebad8d10d6b321dd36dd142355
2013-05-07 09:32:04 -07:00
Eric Dobson
b10ead12a1 Move tc-literal to seperate file, as it doesn't belong in tc-expr.
original commit: adbc516edfc66c5990ae2271c29e991837332de0
2013-05-07 09:32:04 -07:00
Asumu Takikawa
9bd2ec6917 Remove commented code and random line breaks
original commit: 1c9fe6a83a5ee09449c9d7772d36d5b621c76362
2013-05-07 11:05:29 -04:00
Asumu Takikawa
addfa108a6 Style guideline compliance
original commit: 37d44ebb38bb1d8cf57b5c3a0e13e274a931773f
2013-05-07 11:05:29 -04:00
Asumu Takikawa
33bda830b4 Remove unnecessary prefab struct declaration
original commit: 541966daaae08ecace866b5a13087c0291410fe6
2013-05-07 11:05:28 -04:00
Asumu Takikawa
a68d2c2029 Add comments, purpose statements, and contracts
original commit: bb2ecbf8cb066021bc6b1360b488580b3cf2ffc2
2013-05-07 11:05:28 -04:00
Asumu Takikawa
bf3afb8383 Fix printing of tc-any-results in type errors.
In the long run, these error messages should get
simplified so that this printing is not necessary.

Closes PR 13577 and PR 13526

original commit: e53b0858c32b845482d8d9b5f5559df6f143cff7
2013-05-03 15:13:18 -04:00
Asumu Takikawa
e484bddc23 Refactor and add purpose statements/contracts
original commit: 64e1b68c8d1718a0cd7ace92e12d1d6055a22628
2013-05-03 15:13:18 -04:00
Asumu Takikawa
3dd4d70d65 Fix docs for Opaque
Closes PR 13531

original commit: 7c96321cd43540aad9f444000fb1fb1449d086e8
2013-05-03 13:10:31 -04:00
Asumu Takikawa
685597c05d Clean up struct: and disallow unsupported options
Related to PR 13562

original commit: c3b80bee410ca42a7c2f22e907bfdd91ac6ca7c7
2013-05-02 18:31:58 -04:00
Eric Dobson
7334565445 Fix require/untyped-contract to generate better names in contracts.
Related to PR 13716.

original commit: 9c71dafb630e66035a102636cdc5aa84c0ae7940
2013-05-01 20:35:20 -07:00
Eric Dobson
2e802bc3bc Fix contract generation for mutable structures.
original commit: de96643fbe9e50b9554805b2aec199b8bc38962a
2013-04-29 20:45:49 -07:00
Eric Dobson
bb3f8c1885 Make structs initialize to constant instead of covariant.
original commit: 7735aa57998c1107913578fce954376977f197c4
2013-04-27 11:50:57 -07:00
Eric Dobson
1c04aec678 Cleanup names-of-struct
original commit: 154ab046fe58bf15c7cc6eb5e2a4671d07edea14
2013-04-27 11:21:29 -07:00
Vincent St-Amour
f324fecbe1 Explicitly flush output after printing random testing seed.
original commit: 056a6044e59a9a44ea4acac1d682e5824583b2d6
2013-04-26 14:16:55 -04:00
Vincent St-Amour
9998f2c0b2 Document VectorTop and HashTableTop.
original commit: 457ca0982f941372409dec2c03ed46ca9847a097
2013-04-26 12:27:02 -04:00
Vincent St-Amour
e00e836160 Allow read-only hash operations to accept HashTop.
Closes PR13710.

original commit: e6ff57f3bda3f7521722351ed8c3a799d6b99464
2013-04-25 17:29:10 -04:00
Eric Dobson
479f3be677 Make type->contract correctly respect variance.
Track whether we are protecting values from the typed side and/or the
untyped side.

Closes PR 13662.
Closes PR 13663.
Closes PR 13665.

original commit: b5b13222c8eaf7e2152b77ab21d21568103c55c8
2013-04-25 08:29:37 -07:00