Commit Graph

654 Commits

Author SHA1 Message Date
Asumu Takikawa
9eaf5aaddb Remove unnecessary type->contract case 2013-04-05 16:56:50 -04:00
Asumu Takikawa
0161dfdf16 Translate Value types to ctcs with better names
e.g., True -> '#t  instead of
      True -> "#t" for a flat-named-contract
2013-04-05 16:56:50 -04:00
Vincent St-Amour
16a75761b0 Make TR-generated identifiers have the same name as original identifiers.
Makes error messages nicer, and makes it easier to correlate with source code.
2013-04-04 15:31:51 -04:00
Vincent St-Amour
ff3d785da2 Use locations from typed identifiers for type-generated contracts. 2013-04-04 15:31:51 -04:00
Vincent St-Amour
459c731bb9 Have Optimization Coach report unsound float division missed optimizations. 2013-04-04 15:31:50 -04:00
Eric Dobson
94861becd0 Fix untested contract generation code.
Closes PR 13449.
2013-04-04 08:29:15 -07:00
Eric Dobson
76de4d3cca Fix tc-apply to correctly generate expected ValueDots filters.
Closes PR 13649.
2013-04-04 07:45:15 -07:00
Eric Dobson
2b8efd6676 Fix contracts in TR. 2013-04-04 07:43:08 -07:00
Eric Dobson
17b9ed0a75 Fix prefix-of.
Closes PR 13448.
2013-04-04 07:42:45 -07:00
Eric Dobson
5ec7401f1f Add example of (List t ... bound).
Closes PR 11903.
2013-04-04 07:41:53 -07:00
Eric Dobson
c295608282 Add doc for #:no-optimize.
Closes PR 13001.
2013-04-04 07:41:53 -07:00
Vincent St-Amour
a50d9bad7e Avoid unsound optimization for complex division.
Found using random testing.
2013-04-04 10:05:53 -04:00
Eric Dobson
04ef9db1b3 Turn dynamic-requires into lazy-requires in TR.
Closes PR 13621.
2013-04-03 09:49:40 -07:00
Eric Dobson
6c2e75ac7e Make +,*,min,max support precise unary types.
Closes PR 13563.
2013-04-03 09:33:02 -07:00
Eric Dobson
0e0f1cd670 Adds subtyping for filters, and fixes -FS to be more precise.
Closes PR 12817.
2013-04-03 09:25:28 -07:00
Tony Garnock-Jones
c5df74f662 Show the offending value when a TR-introduced Any contract fails 2013-04-02 16:29:11 -04:00
Tony Garnock-Jones
f2616b934c Avoid stripping location information from syntax object in warning message. 2013-04-02 16:29:11 -04:00
Vincent St-Amour
b808d2809e Fix optimization on exp of complex numbers.
Found using random testing.
2013-04-02 16:29:11 -04:00
Vincent St-Amour
f66ee7088f Fix type of tanh.
Found using random testing.
2013-04-02 16:29:10 -04:00
Vincent St-Amour
ed12b64bf7 Fix type of sinh.
Found using random testing.
2013-04-02 16:29:09 -04:00
Vincent St-Amour
6e10dd6a4d Imitate untyped division more closely.
Found using random testing.
2013-04-02 16:29:08 -04:00
Vincent St-Amour
5f9bcbca49 Abstract unboxing of complex division. 2013-04-02 16:29:08 -04:00
Vincent St-Amour
ca63915693 Fix coercions from single-floats to floats.
Found using random testing.
2013-04-02 16:29:07 -04:00
Vincent St-Amour
77b89fab99 Reimplement unboxing of complex division.
Add special cases to be consistent with untyped Racket.

Found using random testing.
2013-04-02 16:29:06 -04:00
Eric Dobson
3d49087ea3 Fix parsing of dotted rest when there is an expected type.
Closes PR 13646.
2013-04-01 22:17:32 -07:00
Vincent St-Amour
c8c6341970 Simplify type. 2013-04-01 14:44:32 -04:00
Vincent St-Amour
92c4c70e7a Fix type of lcm.
Found using random testing.
2013-04-01 14:44:32 -04:00
Vincent St-Amour
990fa87a2e Add random testing for complexes.
Fix a bug it found.
2013-04-01 14:44:31 -04:00
Vincent St-Amour
f7e8b090e6 Fix types of bitwise-and and bitwise-xor.
Found with random testing.
2013-04-01 14:44:31 -04:00
Eric Dobson
eeeceedb8c Reimplement for*/list: in TR so that it works.
Closes PR 13253.
2013-03-31 10:40:21 -07:00
Eric Dobson
b637c24d88 Improve type of expt since inference is bad.
Closes PR 13383.
2013-03-31 10:39:36 -07:00
Eric Dobson
38409e0d7e Add descriptions to for: syntax classes.
Closes PR 13284.
2013-03-25 09:42:29 -07:00
Eric Dobson
87facb736f Check for structure binding and raise good error if it is not there.
Closes PR 13588.
2013-03-24 18:35:22 -07:00
Eric Dobson
bb0b071f38 Remove legacy require/typed form. 2013-03-24 18:35:21 -07:00
Eric Dobson
0e42a791a7 Typecheck (lambda args body) as (arg1 -> result). 2013-03-23 13:18:05 -07:00
Eric Dobson
8d080b74cb Fix Struct-Type-Property.
Closes PR 13593.
2013-03-23 08:24:05 -07:00
Tony Garnock-Jones
0399babc85 pretty-format returns a String, not Void 2013-03-21 18:11:28 -04:00
Eric Dobson
ccc8b85cef Fix parsing of dotted formals.
Closes PR 13576.
2013-03-17 18:52:47 -07:00
Eli Barzilay
af6be85ff5 Fix lots of indentation mistakes.
(Found by my ayatollah script...)
2013-03-14 10:55:47 -04:00
Eric Dobson
71d6189132 Cleanup of subtyping, additional comments, and improved short circuting. 2013-03-13 22:59:27 -07:00
Eric Dobson
714f667cf1 Add more hacky things to make with-handlers typecheck.
Closes PR12644.
2013-03-13 22:29:41 -07:00
Eric Dobson
75f89107b1 Make PolyDots be subtypes even if they have different fixed arguments. 2013-03-13 22:29:41 -07:00
Eric Dobson
6335de099e Make PolyDots actually subtype correctly. 2013-03-13 22:29:41 -07:00
Eric Dobson
6105ce8b20 Check actual args when form looks like for/list. 2013-03-13 21:45:03 -07:00
Eric Dobson
17cb4fd8d0 Make vector-set! type correctly on complicated inputs.
Closes PR13532.
2013-03-11 21:52:11 -07:00
Eli Barzilay
a1437e71f7 Two doc typos.
Closes PR 13590.
Closes PR 13591.
2013-03-11 09:06:46 -04:00
Eric Dobson
1334e8dcc7 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.
2013-03-08 09:00:58 -08:00
Eric Dobson
1fd21ef640 Avoid TR internal error, by checking shape of args. 2013-03-08 09:00:10 -08:00
Eric Dobson
df581c3e4f Remove unused argument to tc/rec-lambda/check. 2013-03-08 08:59:57 -08:00
Eric Dobson
f428191e1c Fix type of split-at and vector-split-at.
Closes PR12700.
2013-03-06 08:49:50 -08:00