Commit Graph

2937 Commits

Author SHA1 Message Date
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
Eric Dobson
8ebfb53cd2 Reduce duplication in init-env code and clean up its interface.
original commit: 695f73bad765be104296bda63ebb9dbdea5d6b6a
2014-01-12 09:46:22 -08:00