Matthew Flatt
780d6ae566
x86_64: minor bignum performance boost
...
Incorporate a few x86_64 assembly routines from the latest GMP,
which provides a small speed boost for operations such as bignum
multiplication and division.
2014-01-15 10:31:11 -07:00
Eric Dobson
a33b26fc04
Optimize cons/sc contracts.
2014-01-15 08:40:08 -08:00
Eric Dobson
74d79a5051
Optimize away recursive contracts in more cases.
2014-01-14 23:49:31 -08:00
Eric Dobson
6d05e41a24
Make numeric contracts in unions better.
2014-01-14 22:52:18 -08:00
Eric Dobson
4ad412d71c
Add tests to check conversion of types to static contracts.
2014-01-14 22:31:21 -08:00
Eric Dobson
9bd577c426
Remove unused require.
2014-01-14 19:37:13 -08:00
Eric Dobson
93e9aaf996
Make typechecking code use label instead of template for binding.
2014-01-14 19:37:13 -08:00
Eric Dobson
eaaa4b2923
Minor cleanup in utils.
2014-01-14 19:37:12 -08:00
Eric Dobson
7a31c966c8
Reduce for-template imports in environment code.
2014-01-14 19:37:12 -08:00
Eric Dobson
4537b52b6a
Reduce and document template requires in types.
2014-01-14 19:37:12 -08:00
Eric Dobson
3d0cadf0a8
Make tc-app code match using label phase.
2014-01-14 19:37:11 -08:00
Eric Dobson
e8c65ff759
Make annotate classes use for label.
2014-01-14 19:27:10 -08:00
Eric Dobson
476c7666b7
Make parse-type do a for-label require.
2014-01-14 19:27:10 -08:00
Robby Findler
cd4de75193
make sure redex-match? does the duplicate non-terminals check
...
closes PR 14290
2014-01-14 16:56:41 -06:00
Eric Dobson
403a8b42e9
Add possible to TR optimizer message
2014-01-14 08:48:07 -08:00
Eric Dobson
dad6c6dec4
Add float optizations back (but only on floats).
2014-01-14 08:48:07 -08:00
Eric Dobson
70d9f4bdb6
Change messaging on non float complex expressions.
2014-01-14 08:48:07 -08:00
Eric Dobson
4fb96bdfa5
Move broken float optimizations out of main syntax class.
...
Introduces slight regression in already broken checks.
2014-01-13 22:35:41 -08:00
Eric Dobson
608eb9df8f
Fix class static contracts and add tests.
2014-01-13 21:01:20 -08:00
Eric Dobson
e164a959eb
Fixup contract restricts.
...
Add useful printing.
Add removal of trival constraints.
Fix bug in close loop when constraints were not getting closed correctly.
2014-01-13 21:01:20 -08:00
Eric Dobson
8f13c2f966
Fixup the static contract documentation.
2014-01-13 21:01:19 -08:00
Eric Dobson
c95084cedf
Change name of recursive contract to not colide with racket/contract.
2014-01-13 21:01:19 -08:00
Eric Dobson
a8199ad1d2
Add in-list and in-hash to instantiate.
2014-01-13 21:01:19 -08:00
Eric Dobson
0be83b6c67
Add comment to simple static contracts.
2014-01-13 21:01:19 -08:00
Eric Dobson
9bb66a9c58
Remove terminal contract generic interface.
2014-01-13 21:01:19 -08:00
Eric Dobson
751835c7da
Add names to flat static contracts.
2014-01-13 21:01:19 -08:00
Eric Dobson
87414956ab
Make polydotted types generate contracts.
2014-01-13 21:01:19 -08:00
Eric Dobson
f394d3d260
Handle complicated parametric types in TR contract generation.
...
Closes PR 14270.
2014-01-13 21:01:19 -08:00
Eric Dobson
738efdc263
Simplify recursive contracts when optimizing.
2014-01-13 21:01:18 -08:00
Eric Dobson
bb74b55f67
Add custom printer for terminal contracts.
2014-01-13 21:01:18 -08:00
Eric Dobson
497a7faa83
Make static contracts catch simple parametric contract errors.
2014-01-13 21:01:18 -08:00
Eric Dobson
6deb1e3193
Add sc-traverse for folding over static contracts.
2014-01-13 21:01:18 -08:00
Eric Dobson
f17f6655dd
Make contract generation failure tests pass, and simplify reason logic.
2014-01-13 21:01:18 -08:00
Eric Dobson
1acd1537e8
Made error messages better for contract generation failures.
2014-01-13 21:01:18 -08:00
Eric Dobson
62f4aec04f
Made reasons get passed through and re-add a failing test.
2014-01-13 21:01:18 -08:00
Eric Dobson
fff652b44b
Added generic mechanism for easy to write terminal contracts.
2014-01-13 21:01:17 -08:00
Eric Dobson
9b9ec7fd5a
Added terminal sc contracts, and made optimizer use them.
2014-01-13 21:01:17 -08:00
Eric Dobson
dcb8fa2b5e
Sorta working new lengths.
2014-01-13 21:01:17 -08:00
Eric Dobson
9eea867e9a
Make simple static contracts not combinators.
2014-01-13 21:01:17 -08:00
Eric Dobson
895fd4b917
Remove unsound optimizations.
2014-01-13 21:01:17 -08:00
Eric Dobson
de879b0683
Add more static contract tests.
2014-01-13 21:01:17 -08:00
Eric Dobson
5ed67939b4
Make tests more standardized.
2014-01-13 21:01:17 -08:00
Eric Dobson
6cfb035b3f
Make optimize for static contracts have saner interface.
2014-01-13 21:01:17 -08:00
Eric Dobson
6961c0ecc8
Make many more static contract optimizer tests and add some more optimizations.
2014-01-13 21:01:16 -08:00
Eric Dobson
e32a7603b2
Remove/disable broken tests.
2014-01-13 21:01:16 -08:00
Eric Dobson
93488e49b4
Add a bunch of documentation to static contracts.
2014-01-13 21:01:16 -08:00
Eric Dobson
333a93000a
Make static contracts for channels.
2014-01-13 21:01:16 -08:00
Eric Dobson
3d769c2df1
Add README.
2014-01-13 21:01:16 -08:00
Eric Dobson
6f56948cff
Move contract conversion into the old file.
2014-01-13 21:01:16 -08:00
Eric Dobson
97cd169e80
Enable static contract optimization.
2014-01-13 21:01:16 -08:00