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
Eric Dobson
083f913c7c
Allow requiring functions with filters in contravariant positions.
...
original commit: dbcb1414dadd6fb125b5527d9b0d8853dd1ce616
2013-04-25 08:29:37 -07:00
Eric Dobson
5aec0c0c1b
Switch out? to from-typed? as it has the same meaning.
...
original commit: 03e1ffda3e1c27c982b6ed4681d7d1bc2037b643
2013-04-25 08:29:25 -07:00
Eric Dobson
c07428390d
Cleanup tc-app-helper.rkt.
...
original commit: 62f74cda0e559ac322236f63a32c5b344dbd9181
2013-04-24 23:31:12 -07:00
Eric Dobson
d66ef4fb11
Cleanup requires in tc-apply.
...
original commit: 11bd5314e278e15b44ecc2b224954c5104ff3bec
2013-04-24 23:13:04 -07:00
Eric Dobson
deb336738c
Minor cleanup in subtype.rkt
...
original commit: b9c4582746524c1063564ad306194fd0ba4069a0
2013-04-24 23:13:03 -07:00
Eric Dobson
68d34aa059
Fix subtyping of (ListDots t 'a) <: (Listof t).
...
Closes PR 13636.
original commit: 6898a7c880f1a37219e61d420ed6610a4d24f384
2013-04-24 21:08:18 -07:00
Eric Dobson
a0d7d71599
Fix expected type when typechecking map
...
original commit: 863ac053328b0df54cc10a0724274f7d110d6d49
2013-04-24 20:13:39 -07:00
Eric Dobson
7e7641c8e9
Don't let map introduce type variables.
...
Closes PR 13581.
original commit: 67dd956b6acf5533cd2551cac7fd618eca839261
2013-04-24 20:13:39 -07:00
Eric Dobson
929134d7ce
Fix up lazy-requires and dynamic-requires in TR.
...
original commit: 611b22ff0421d46288f987a7668fb942cb70a01e
2013-04-24 18:46:44 -07:00
Eric Dobson
4d72cbffa0
Small TR fixes.
...
original commit: a94c449ff1d7e6eb299c06d8be2da681d1b99d9f
2013-04-24 18:46:44 -07:00
Eric Dobson
211f0fcd58
Use information of application site, to reduce possible arities.
...
Closes PR12905.
original commit: 55aba088decf0c243a7d5d0cf912e03efc524d40
2013-04-24 18:46:44 -07:00
Eric Dobson
7a5f8c29ac
Add polydots to all things that support it.
...
Closes PR 13612.
Closes PR 13584.
original commit: 2e2ef0b57aa5ca5c87d86e035e633cd265f94d9f
2013-04-22 21:03:00 -07:00
Eric Dobson
6b45173588
Correctly protect Procedures in TR.
...
Closes PR 13664.
original commit: fc36c12ce4df96cca4df053fa5e0f4c4969b7e8a
2013-04-22 21:00:52 -07:00
Vincent St-Amour
6350738866
Print seed used for TR random testing.
...
To make it possible to reproduce test runs.
original commit: 1f3e38d305eefd4e79615688e6327e8b3c8faec0
2013-04-22 11:55:00 -04:00
Sam Tobin-Hochstadt
c0b5f31c90
Add #:omit-define-syntaxes
to define-type
.
...
original commit: ecf02a32b4e2431e57f77da4f497fcb8f62426ec
2013-04-21 15:39:38 -04:00
Vincent St-Amour
20a01d0a03
Extra tests.
...
original commit: 341528065735f8390dbad87f49646580096a6a0d
2013-04-19 14:21:04 -04:00
Sam Tobin-Hochstadt
1e8e959025
Fix types of system
etc for new keyword arguments.
...
This requires extending the ->optkey type constructor to support rest
arguments, and fixing the keyword function type generation code.
Testing is still limited because there's no parsing for such types.
That will be handled in a later commit.
original commit: 3fd9df03f7236c803125170e03773218d70c6665
2013-04-18 21:01:56 -04:00
Eric Dobson
632b14c736
Terminate typechecking on cyclic lists.
...
Closes PR 13687.
original commit: b8ab1334d9192720ebb6a37e311880f158276d8b
2013-04-13 20:23:19 -07:00
Stephen Chang
28a898f4fe
fix typed racket named let: error when there are no binding types
...
closes PR 13691
include in release
original commit: b3ba324a9263bb3b170cac8476b58f1217f381c5
2013-04-12 18:25:55 -04:00
Asumu Takikawa
5644dbec4b
Remove unnecessary type->contract case
...
original commit: 9eaf5aaddbd4aaf444305491b0d0bbd3024fdf2f
2013-04-05 16:56:50 -04:00
Asumu Takikawa
8cb2e46596
Translate Value types to ctcs with better names
...
e.g., True -> '#t instead of
True -> "#t" for a flat-named-contract
original commit: 0161dfdf167e70cffe9f20b050ee7efe5c2062f4
2013-04-05 16:56:50 -04:00
Asumu Takikawa
3e82fb429d
Adjust type for dns-get-address
...
original commit: 35e791be4eed4d67dfe4e91e5fb4cd22fb824b71
2013-04-04 16:11:28 -04:00
Vincent St-Amour
1bc88189d1
Make TR-generated identifiers have the same name as original identifiers.
...
Makes error messages nicer, and makes it easier to correlate with source code.
original commit: 16a75761b052f49d0257afb19cc5282bae34558e
2013-04-04 15:31:51 -04:00
Vincent St-Amour
e4e84ecf70
Use locations from typed identifiers for type-generated contracts.
...
original commit: ff3d785da2d87bdf3ef1d91d89400dd5b5a9722f
2013-04-04 15:31:51 -04:00
Vincent St-Amour
b0851f1c4f
Have Optimization Coach report unsound float division missed optimizations.
...
original commit: 459c731bb93028e5bbf67345dcd1cb1d22a2e208
2013-04-04 15:31:50 -04:00
Eric Dobson
e3a7a3e932
Fix untested contract generation code.
...
Closes PR 13449.
original commit: 94861becd012f99a6438a1f9075d43fde0c8cf62
2013-04-04 08:29:15 -07:00
Eric Dobson
d425ebda53
Fix tc-apply to correctly generate expected ValueDots filters.
...
Closes PR 13649.
original commit: 76de4d3cca494861e42a14cb84f28fa820c9214b
2013-04-04 07:45:15 -07:00
Eric Dobson
33fda17516
Fix contracts in TR.
...
original commit: 2b8efd66769258c006fd08b571027cdb4fd89a69
2013-04-04 07:43:08 -07:00
Eric Dobson
84c64fb0d0
Fix prefix-of.
...
Closes PR 13448.
original commit: 17b9ed0a75678a2b5c40213a2fc67d786c52bd4e
2013-04-04 07:42:45 -07:00
Eric Dobson
5286a8163d
Add example of (List t ... bound).
...
Closes PR 11903.
original commit: 5ec7401f1f5a628948e091eeb2a54d7ca09f2109
2013-04-04 07:41:53 -07:00
Eric Dobson
e36796195e
Add doc for #:no-optimize.
...
Closes PR 13001.
original commit: c29560828250dddcb3ff265527896e219d5d8b63
2013-04-04 07:41:53 -07:00
Vincent St-Amour
2f0211bd19
Document not yet fixed optimizer bugs found using random testing.
...
original commit: d00a579c5a4b6488d87421da3a75ed6ec8032ea3
2013-04-04 10:05:53 -04:00
Vincent St-Amour
5f3a09570a
Avoid unsound optimization for complex division.
...
Found using random testing.
original commit: a50d9bad7e0823af5f3134e5edbd9be2768f247a
2013-04-04 10:05:53 -04:00
Eli Barzilay
101b1d6496
Test for being able to customize struct printouts.
...
original commit: 8ffd8878476732e1e783efaa25a94d54172c950e
2013-04-03 18:10:22 -04:00
Eric Dobson
34ddd07482
Turn dynamic-requires into lazy-requires in TR.
...
Closes PR 13621.
original commit: 04ef9db1b31496bb9ec93f8f7899c04acf3d1230
2013-04-03 09:49:40 -07:00
Eric Dobson
3d360c2524
Make +,*,min,max support precise unary types.
...
Closes PR 13563.
original commit: 6c2e75ac7e21b3c1adcc9a9f7eb0fff4223de65c
2013-04-03 09:33:02 -07:00
Eric Dobson
07b7768bdb
Adds subtyping for filters, and fixes -FS to be more precise.
...
Closes PR 12817.
original commit: 0e0f1cd6707f5cda8e636f3dd1c6dd5d885fd0c4
2013-04-03 09:25:28 -07:00
Vincent St-Amour
74fd3f536f
Fix test for new complex division.
...
original commit: ffc90239d06a2977d7a1150b693c62d3e8e9fe53
2013-04-02 17:32:29 -04:00
Tony Garnock-Jones
e25d827eb0
Show the offending value when a TR-introduced Any contract fails
...
original commit: c5df74f662bf5eb733211a33db256f91bb11dfaa
2013-04-02 16:29:11 -04:00
Tony Garnock-Jones
6bdd1c3c17
Avoid stripping location information from syntax object in warning message.
...
original commit: f2616b934c8e71b7d1caf327b31d2c9ba032c321
2013-04-02 16:29:11 -04:00
Vincent St-Amour
a0821131dc
Fix optimization on exp of complex numbers.
...
Found using random testing.
original commit: b808d2809e4856614248b2308d4a21bbca4400f7
2013-04-02 16:29:11 -04:00
Vincent St-Amour
e0394683a2
Fix type of tanh.
...
Found using random testing.
original commit: f66ee7088fec28a4283ef7acf8639bc9bbbfb37e
2013-04-02 16:29:10 -04:00
Vincent St-Amour
523bbf4882
Fix type of sinh.
...
Found using random testing.
original commit: ed12b64bf756ec908a507dc61aa00cce32c94234
2013-04-02 16:29:09 -04:00
Vincent St-Amour
9fa9d9751f
Imitate untyped division more closely.
...
Found using random testing.
original commit: 6e10dd6a4dd91077e3080414ab1a440dc8d3c958
2013-04-02 16:29:08 -04:00
Vincent St-Amour
f159548363
Abstract unboxing of complex division.
...
original commit: 5f9bcbca496be116e7519341056572c6927a4765
2013-04-02 16:29:08 -04:00
Vincent St-Amour
6584c83187
Fix coercions from single-floats to floats.
...
Found using random testing.
original commit: ca63915693b706f0ead17f114ffe76a087a11c63
2013-04-02 16:29:07 -04:00
Vincent St-Amour
82f1f48ad2
Reimplement unboxing of complex division.
...
Add special cases to be consistent with untyped Racket.
Found using random testing.
original commit: 77b89fab993f1f8f55c705d10a5d1210bc01feda
2013-04-02 16:29:06 -04:00
Eric Dobson
9a7e5339b7
Fix parsing of dotted rest when there is an expected type.
...
Closes PR 13646.
original commit: 3d49087ea3aa85f205d1f70982f24564fb11345c
2013-04-01 22:17:32 -07:00
Vincent St-Amour
1d9ed172ef
Simplify type.
...
original commit: c8c6341970db042b62c9143f92914553e90dd843
2013-04-01 14:44:32 -04:00
Vincent St-Amour
c36cbef304
Fix type of lcm.
...
Found using random testing.
original commit: 92c4c70e7a3ebcdfa22d8a518256543803558adb
2013-04-01 14:44:32 -04:00
Vincent St-Amour
948d4afbf8
Re-enable testing of hyperbolic trigonometry functions.
...
original commit: 70a8b79d0e3a0a5c3e70a798ae8e24940d2ace43
2013-04-01 14:44:31 -04:00
Vincent St-Amour
e1a6cc3618
Add random testing for complexes.
...
Fix a bug it found.
original commit: 990fa87a2eba6b531557c623a4b5c5b4a893313b
2013-04-01 14:44:31 -04:00
Vincent St-Amour
4da3453cf5
Sometimes generate random integers.
...
original commit: ca2e6bd769374b2e636fdf0a59afda484fb7975a
2013-04-01 14:44:31 -04:00
Vincent St-Amour
b78a21ce68
Factor out grammar to generate well-typed terms with higher probability.
...
Allows us to test integer-specific functions.
original commit: 3e9595e910d2dcbcb0e5edbbabef826ad4c4540b
2013-04-01 14:44:31 -04:00
Vincent St-Amour
f6952a0d91
Fix types of bitwise-and and bitwise-xor.
...
Found with random testing.
original commit: f7e8b090e6e6e2f6d5be7687878e407ee923b29b
2013-04-01 14:44:31 -04:00
Eric Dobson
9d9d226bf6
Remove dependency on GUI libraries.
...
original commit: 5d8f470e0bf7d7b8f0a4a70d822c526265dc5c00
2013-03-31 11:43:08 -07:00
Eric Dobson
4aa61d7de1
Reimplement for*/list: in TR so that it works.
...
Closes PR 13253.
original commit: eeeceedb8c0fb5102811ccdd1c4d52dc9efd813b
2013-03-31 10:40:21 -07:00
Eric Dobson
e118ab41e2
Improve type of expt since inference is bad.
...
Closes PR 13383.
original commit: b637c24d888270385bad4d336c58b4f653c1fcc9
2013-03-31 10:39:36 -07:00
Eric Dobson
e45eac7249
Add testcase for sibling modules.
...
Closes PR 13155.
original commit: ecec724747ed51478b8b5990441779897e3c5a87
2013-03-31 10:39:16 -07:00
Eric Dobson
74449f2a0a
Add descriptions to for: syntax classes.
...
Closes PR 13284.
original commit: 38409e0d7e5170f0d75f0c7c5cd9da25809a47dd
2013-03-25 09:42:29 -07:00
Eric Dobson
06075c185d
Add testcase.
...
Closes PR 12812.
original commit: d7f12d93f498c530ca4ada47dfc40155b664e281
2013-03-25 08:50:48 -07:00
Eric Dobson
44c905cf88
Check for structure binding and raise good error if it is not there.
...
Closes PR 13588.
original commit: 87facb736fab1a79f064381433256f8b8a525688
2013-03-24 18:35:22 -07:00
Eric Dobson
2393bd43a3
Remove legacy require/typed form.
...
original commit: bb0b071f385c42c4a4ba8cf54db032bb47a3e010
2013-03-24 18:35:21 -07:00
Eric Dobson
54d6d3ffec
Typecheck (lambda args body) as (arg1 -> result).
...
original commit: 0e42a791a75a30bb2bf45bf968d053dfdf567d40
2013-03-23 13:18:05 -07:00
Eric Dobson
22672f99e8
Fix Struct-Type-Property.
...
Closes PR 13593.
original commit: 8d080b74cb78d0b000059782703b2c4aa896f5cc
2013-03-23 08:24:05 -07:00
Tony Garnock-Jones
606b192204
pretty-format returns a String, not Void
...
original commit: 0399babc85d72a7dfc3114cb127285779f053228
2013-03-21 18:11:28 -04:00
Eric Dobson
ff5b594242
Fix parsing of dotted formals.
...
Closes PR 13576.
original commit: ccc8b85cef665b310b5197fe2c145c85280f9bd1
2013-03-17 18:52:47 -07:00
Eli Barzilay
8c1e485526
Fix lots of indentation mistakes.
...
(Found by my ayatollah script...)
original commit: af6be85ff576e475753a46bd3f1690eb8bf88a28
2013-03-14 10:55:47 -04:00
Eric Dobson
b8c9e1f63f
Cleanup of subtyping, additional comments, and improved short circuting.
...
original commit: 71d6189132cecffc75b4d2fdb41c985a1a763380
2013-03-13 22:59:27 -07:00
Eric Dobson
5fbd396787
Add more hacky things to make with-handlers typecheck.
...
Closes PR12644.
original commit: 714f667cf1758c31560fa25b5a21b5df2c17e2e0
2013-03-13 22:29:41 -07:00
Eric Dobson
02c4f0dd11
Make PolyDots be subtypes even if they have different fixed arguments.
...
original commit: 75f89107b1449deda042b62feaebb9b9bf3c92ec
2013-03-13 22:29:41 -07:00
Eric Dobson
57a60ad403
Make PolyDots actually subtype correctly.
...
original commit: 6335de099e7161447ec444ad320c6751f2c2af4d
2013-03-13 22:29:41 -07:00
Eric Dobson
b151df08bc
Check actual args when form looks like for/list.
...
original commit: 6105ce8b2087a0c7fca99fd2e99f1785bdb2af04
2013-03-13 21:45:03 -07:00
Eric Dobson
61a2a93e40
Add checks for failing to parse types.
...
original commit: 4683be8793bdbd3e16e62dfbdd5d2be54cce9c05
2013-03-11 22:53:29 -07:00
Eric Dobson
6df840fe8e
Make vector-set! type correctly on complicated inputs.
...
Closes PR13532.
original commit: 17cb4fd8d0be67db5a6ba4e71f9141222416bc17
2013-03-11 21:52:11 -07:00
Eli Barzilay
5e164bed59
Two doc typos.
...
Closes PR 13590.
Closes PR 13591.
original commit: a1437e71f733e1866e1998799e4f1337a4043c4d
2013-03-11 09:06:46 -04:00
Eric Dobson
5234bd3d94
Reduce usage of check-below.
...
This pushes almost all uses of check below into tc-expr and
tc-expr/check. This means that the optimizer sees more precise types
and can make more optimizations.
original commit: 1334e8dcc77854ac826306d3f6a36150cb0bf0c1
2013-03-08 09:00:58 -08:00
Eric Dobson
b63e5dc1ec
Avoid TR internal error, by checking shape of args.
...
original commit: 1fd21ef640514b0c3a67356d0f68cadff36d3d3a
2013-03-08 09:00:10 -08:00
Eric Dobson
43028b1145
Remove unused argument to tc/rec-lambda/check.
...
original commit: df581c3e4f154660ded04d95d8a97619b6da9b57
2013-03-08 08:59:57 -08:00
Eric Dobson
4184f9b493
Fix type of split-at and vector-split-at.
...
Closes PR12700.
original commit: f428191e1c2b7b36054a1d00d93d6b65994a414a
2013-03-06 08:49:50 -08:00
Eric Dobson
885c3b8a79
Reduce unnecessarily complicated restrict case.
...
original commit: ddf0c39e980598c8958a6e582b4a70f6762ad8c0
2013-03-06 08:48:44 -08:00