Commit Graph

4038 Commits

Author SHA1 Message Date
Eric Dobson
3439faef99 Fixup contract restricts.
Add useful printing.
Add removal of trival constraints.
Fix bug in close loop when constraints were not getting closed correctly.

original commit: e164a959eb3aa97938fb4ae9f98cfb67aee38b9f
2014-01-13 21:01:20 -08:00
Eric Dobson
e4344ff450 Fixup the static contract documentation.
original commit: 8f13c2f966d3c5fe83c679d46bce462ebaf65da8
2014-01-13 21:01:19 -08:00
Eric Dobson
515508c219 Change name of recursive contract to not colide with racket/contract.
original commit: c95084cedf883807b2eecb37ba2ac14d7f4bc4ad
2014-01-13 21:01:19 -08:00
Eric Dobson
db5ce70361 Add in-list and in-hash to instantiate.
original commit: a8199ad1d2586f18d70cb70c79bc87256c030b1a
2014-01-13 21:01:19 -08:00
Eric Dobson
816a72685a Add comment to simple static contracts.
original commit: 0be83b6c67fec940b5b31f861b719401a7476056
2014-01-13 21:01:19 -08:00
Eric Dobson
96971157ca Remove terminal contract generic interface.
original commit: 9bb66a9c58f0a15b97ce9e8f4d24bc970913ad10
2014-01-13 21:01:19 -08:00
Eric Dobson
db19acbc71 Add names to flat static contracts.
original commit: 751835c7dac73d6edb45ce9349bc329593250ded
2014-01-13 21:01:19 -08:00
Eric Dobson
c933380f40 Make polydotted types generate contracts.
original commit: 87414956ab23f0d4812b2cc5bd29025b0345666a
2014-01-13 21:01:19 -08:00
Eric Dobson
041577d7bb Handle complicated parametric types in TR contract generation.
Closes PR 14270.

original commit: f394d3d26069467e8e6d023e5202b3b37e59ea0e
2014-01-13 21:01:19 -08:00
Eric Dobson
efe4dc50ba Simplify recursive contracts when optimizing.
original commit: 738efdc263c347321879e73405425cff2558c14b
2014-01-13 21:01:18 -08:00
Eric Dobson
9eaba7098a Add custom printer for terminal contracts.
original commit: bb74b55f67087848d6eec057e00fd925b0877bc4
2014-01-13 21:01:18 -08:00
Eric Dobson
e0a635b8c6 Make static contracts catch simple parametric contract errors.
original commit: 497a7faa8310ad78d5760f2ee9fe8e4da2570897
2014-01-13 21:01:18 -08:00
Eric Dobson
02454a62fd Add sc-traverse for folding over static contracts.
original commit: 6deb1e3193b81b2091ddda0a9aee445b9d857c50
2014-01-13 21:01:18 -08:00
Eric Dobson
b3fc8b5667 Make contract generation failure tests pass, and simplify reason logic.
original commit: f17f6655dd2400ffb91e1116513db4ce2056b743
2014-01-13 21:01:18 -08:00
Eric Dobson
6b83691093 Made error messages better for contract generation failures.
original commit: 1acd1537e8e439376da4c925dd4cc96334467f16
2014-01-13 21:01:18 -08:00
Eric Dobson
9525b658d1 Made reasons get passed through and re-add a failing test.
original commit: 62f4aec04f91d0740101bc01fc12118a56ac44a6
2014-01-13 21:01:18 -08:00
Eric Dobson
a021ecf313 Added generic mechanism for easy to write terminal contracts.
original commit: fff652b44b1a24620469029385c444cc83ae6ca1
2014-01-13 21:01:17 -08:00
Eric Dobson
b3392ea759 Added terminal sc contracts, and made optimizer use them.
original commit: 9b9ec7fd5a9c8a357bceaa28de16f08d0083a5e4
2014-01-13 21:01:17 -08:00
Eric Dobson
36e7d251d8 Sorta working new lengths.
original commit: dcb8fa2b5e74d0da9e6a8237cf5c5862681e00c8
2014-01-13 21:01:17 -08:00
Eric Dobson
eec8723205 Make simple static contracts not combinators.
original commit: 9eea867e9afc22246edafdd091d2d2a832986eee
2014-01-13 21:01:17 -08:00
Eric Dobson
30a88b5909 Remove unsound optimizations.
original commit: 895fd4b917defcd2a467ebfb5354a46995914521
2014-01-13 21:01:17 -08:00
Eric Dobson
0409288195 Add more static contract tests.
original commit: de879b06832e9d978d5bce853a9635ae67408372
2014-01-13 21:01:17 -08:00
Eric Dobson
56c8cec228 Make tests more standardized.
original commit: 5ed67939b474d58e548a03edfb11cfbb2c7f7300
2014-01-13 21:01:17 -08:00
Eric Dobson
9c6d897d02 Make optimize for static contracts have saner interface.
original commit: 6cfb035b3f5aab1e17a93d4cfab98d29cfef760a
2014-01-13 21:01:17 -08:00
Eric Dobson
be2c246d1f Make many more static contract optimizer tests and add some more optimizations.
original commit: 6961c0ecc812ac0653c71e0acf55a66c6300ba82
2014-01-13 21:01:16 -08:00
Eric Dobson
13d40d3616 Remove/disable broken tests.
original commit: e32a7603b2c7c188add915561d05e9b4d3362593
2014-01-13 21:01:16 -08:00
Eric Dobson
9b858ddfd0 Add a bunch of documentation to static contracts.
original commit: 93488e49b44f51188c2f54b939ddc8379f14e285
2014-01-13 21:01:16 -08:00
Eric Dobson
37ec886258 Make static contracts for channels.
original commit: 333a93000ab2593950e123cda67345a6e4e28f66
2014-01-13 21:01:16 -08:00
Eric Dobson
e01a695021 Add README.
original commit: 3d769c2df13eb82d655e4c352e00efbe281f03b3
2014-01-13 21:01:16 -08:00
Eric Dobson
efab0bb5ef Move contract conversion into the old file.
original commit: 6f56948cff75dd4497b742ae01cd5df18c654e6f
2014-01-13 21:01:16 -08:00
Eric Dobson
ba6a68d2b0 Enable static contract optimization.
original commit: 97cd169e800d9be1b256e0423ab6b7e2c42089b2
2014-01-13 21:01:16 -08:00
Eric Dobson
5a2d6f9c6b Make version of TR that builds new contracts.
original commit: eb03d5c298ef77bc9e382f8a6d1bfc891ad5c076
2014-01-13 21:01:15 -08:00
Eric Dobson
e832c436e5 Moved static-contract tests to TR test directory.
original commit: ae9a8c9f25e50d530ad13a6d9bd6b01b9cd4ff4b
2014-01-13 21:01:15 -08:00
Eric Dobson
e83c805771 Put static contracts in main repo.
original commit: 43ce10b5fed9b145eb60e26de832811781ae5889
2014-01-13 21:01:15 -08:00
Asumu Takikawa
308680c98f Replace chomp with string-trim, delete former
original commit: 8f461f9f88ec748a0b456c605efd285c8e292663
2014-01-13 17:34:03 -05:00
Asumu Takikawa
c5721f2c71 Fix printer tests when run individually
These tests worked in the harness but broke when run
outside of the harness.

original commit: 820a297801f1dccb6130ca55073fb04d595133f7
2014-01-13 16:56:07 -05:00
Asumu Takikawa
2d99b93e3f Remove unnecessary printing parameter in TR
Pretty printing makes this unnecessary

original commit: 872dbd6160c568f44a80f154f838b2c4a4c8f938
2014-01-13 16:41:14 -05:00
Asumu Takikawa
b68b5bdd17 Add type printer tests
original commit: 4c5e188ca411f5753bf6cfa2c0d8101b96231c0a
2014-01-13 15:30:38 -05:00
Asumu Takikawa
e640308b0e Use type pretty-printing in TR messages
Closes PR 11271

original commit: 130f6673903b72a7813c357405acb85ee886dc37
2014-01-13 15:30:38 -05:00
Asumu Takikawa
ee191531e6 Add pretty-printing capability for TR types
- Internally convert types to s-expressions before printing
  - Pretty print based on s-expression representation

original commit: 60ea93a264022f4cca72173c930b9c8bfe3e39bf
2014-01-13 15:30:38 -05:00
Asumu Takikawa
69df7f2664 Move chomp function into its own util file
original commit: 4d448785cd3a256dccb5b84a59170a2b4dd0b41c
2014-01-13 15:30:38 -05:00
Eric Dobson
7c00a7d443 Fix unary / optimizations.
original commit: aa3505d9374b48d6d273c141c178d760d2629871
2014-01-13 09:34:40 -08:00
Eric Dobson
63a1f89025 Fix bindings of unboxed complex float functions.
Closes PR 12475.
Closes PR 14284.

original commit: c60b31f0d19ef2a37adb654b0e5fa9178ce62f4d
2014-01-13 09:34:40 -08:00
Asumu Takikawa
63a8793faa Make kw-subtypes* consistent with s and t ordering
Subtyping functions should take the lower type s
first and upper type t second

original commit: cb885b3b55c932f95098413906d6cf3186a4befd
2014-01-13 11:36:55 -05:00
Asumu Takikawa
905d355065 Fix subtyping for keyword function types
Closes PR 14252
Closes PR 14257

original commit: 0efd90f846913d87aba53d9d73483960a98e63a8
2014-01-13 11:36:55 -05:00
Asumu Takikawa
5e75b2c945 Add "when to add type annotations?" to TR Guide
Based on a discussion from PR 14244

original commit: d202f415d95ff04e295be101db59402489dc9bfa
2014-01-12 23:11:01 -05:00
Eric Dobson
90d9b12f26 Ensure that we coerce to double flonums.
original commit: 2076199838a8de2527ba241ef8e564ae5cfd385a
2014-01-12 13:22:14 -08:00
Eric Dobson
9ae20f77b8 Add new known bug.
original commit: 7c945d36c06589cf93e68c6f633c50749cb7efa4
2014-01-12 13:21:13 -08:00
Eric Dobson
24eac377cd Mark TR exp bug as fixed.
original commit: 97158e9e6f56e81044523064b3ec292505c5f41e
2014-01-12 12:54:00 -08:00
Eric Dobson
9634b1c8a8 Fixup anyvalue handling in call-with-values.
Closes PR 14214.

original commit: 960da4579a66aa0090dbf5ef5db35f052ec5e824
2014-01-12 09:50:50 -08:00