Commit Graph

3796 Commits

Author SHA1 Message Date
Asumu Takikawa
dbaebdd305 Propagate expected types better for private fields
Closes PR 14911
2015-01-04 19:39:14 -05:00
Sam Tobin-Hochstadt
e64abf30d2 Support #:unscaled? in save-file for Bitmap%.
Closes PR 14916.
2015-01-04 15:39:13 -05:00
Vincent St-Amour
a943d85375 Preserve more source locations for function definitions. 2015-01-02 20:57:08 -05:00
Sam Tobin-Hochstadt
e27e7ed28e Merge pull request #4 from AngusL/master
Add type for base64-encode optional argument
2015-01-02 17:12:02 -05:00
Asumu Takikawa
791a16e54f Fix method definitions with lambda/case-lambda
Closes PR 14904
2015-01-01 01:59:37 -05:00
Asumu Takikawa
6059fb481b Check expected type before calling tc/funapp1
This compensates for a change in commit bb3f446186
that made the possible-domains function more permissive
(possibly returning results that are inconsistent with the
 expected type).

Closes PR 14889
2015-01-01 00:03:23 -05:00
Asumu Takikawa
643c20afdb Add missing contract generation error cases
Functions with dotted values or AnyValues in the return type
aren't yet supported for contract generation.

Related to PR 14894
2014-12-27 05:31:46 -05:00
Angus Lepper
bc9a740640 Add type for base64-encode optional argument 2014-12-23 19:31:29 +00:00
Alexis King
9fe834d35c Add typed/json which exports almost all of json
Does not include support for custom nulls, but is otherwise entirely
functional.

Closes #3.
2014-12-22 20:41:24 -05:00
Andrew Kent
ca88457092 Merge pull request #2 from andmkent/master
let-aliasing + removing let imps
2014-12-22 12:59:32 -05:00
Andrew Kent
e1b8eff1f9 initial let-aliasing addition 2014-12-22 12:35:30 -05:00
Andrew Kent
53d1d8a15d restrict structural recursion 2014-12-22 12:35:15 -05:00
Andrew Kent
683ebb1023 printer fix for paths 2014-12-22 12:34:48 -05:00
Vincent St-Amour
29e4be449b Fix more collection paths. 2014-12-18 09:30:17 -05:00
Asumu Takikawa
3e45f258be Adjust TR test package dependencies 2014-12-16 16:25:37 -05:00
Vincent St-Amour
67bb30da0b Fix collection references to use the new name. 2014-12-16 14:15:54 -05:00
Vincent St-Amour
134f793ccc Reduce directory nesting for tests. 2014-12-16 10:07:25 -05:00
Andrew Kent
76effbb423 better Or implied-atomic? & unit tests 2014-12-13 22:13:31 -05:00
Sam Tobin-Hochstadt
8c5753df84 Try a smaller install. 2014-12-12 17:59:21 -05:00
Vincent St-Amour
fe3a935d0c Add missing newline for :print-type.
Closes PR 14880.
2014-12-12 16:38:58 -05:00
Sam Tobin-Hochstadt
933e571125 Don't compare non-identifiers with free-id=?.
Closes PR 14877.
2014-12-10 17:53:46 -05:00
Sam Tobin-Hochstadt
9defa4b492 Install deps on travis. 2014-12-09 19:41:10 -05:00
Sam Tobin-Hochstadt
ca3007ea91 Fix path in travis. 2014-12-09 19:38:26 -05:00
Sam Tobin-Hochstadt
d1ea39b9c5 Add travis tests. 2014-12-09 19:36:37 -05:00
Sam Tobin-Hochstadt
b5172405ff Actually fix the tests. 2014-12-08 10:03:34 -05:00
Sam Tobin-Hochstadt
8b3ed72205 Increase test timeouts for DrDr. 2014-12-07 10:01:19 -05:00
Sam Tobin-Hochstadt
eb1459e524 Add standard .gitignore file. 2014-12-06 17:46:25 -05:00
Sam Tobin-Hochstadt
44e3cdfb71 Remove extra directories. 2014-12-02 00:53:36 -05:00
Sam Tobin-Hochstadt
17436675a6 Remove stray reference to Racket in LICENSE files.
Related to PR 14842.

original commit: 3bbdd134b1754d51422eeaec1c35e9c62d45144c
2014-11-25 14:09:57 -05:00
Asumu Takikawa
088a59038a Fix infer-self-type for depth overriden methods
When an overriden method implements a subtype of the superclass
type, sometimes the typechecker gets confused what the type should
be in the resulting class type.

original commit: 85b70aef7f66f0e0c8716fca716d1e38478bf763
2014-11-21 14:17:16 -05:00
Asumu Takikawa
569b55bf69 Fix with-type when used at the top-level
In some situations, with-type would fail to clean up its
state before reporting an error at the top-level.

original commit: 591147dd028d4586e4346d83706d38454f043172
2014-11-21 02:07:11 -05:00
Asumu Takikawa
a27553b1f6 Remove unused requires in TR
original commit: 381078510a26f7ce0b6dc91ad6e10a07f8b85755
2014-11-21 01:46:52 -05:00
Asumu Takikawa
29995ca01c Put Instance types in the seen list for subtyping
Since we resolve under Instance types for subtyping we
need to put them in the current-seen list too. Fixes
an infinite loop bug in subtyping.

original commit: 826a08d80c65d00dc0b77c89e4a6c2967bfef74c
2014-11-20 20:42:08 -05:00
Asumu Takikawa
99ebb7e51c Remove the depth subtype check on #:implements
This check was not really necessary to begin with,
but I thought it might be a useful sanity check. In
retrospect, calling `subtype` here causes other headaches
(such as when registering type aliases) and is confusing
when multiple #:implements are provided.

Instead, the #:implements clauses are just linearized
and the last type for any given method/field is taken.

This may also prevent a heisenbug that occurs in the
GUI framework types. I still don't know the root cause of
that non-determinism though.

Closes PR 14669

original commit: 9b4e3befa3605851f1ee30f20f4a38edd06dd8a9
2014-11-20 12:20:28 -05:00
Asumu Takikawa
c57db18ec4 Add #:implements/inits for Class types
Allows some Class types to be written more concisely.

original commit: 56e7026b165d8a9eb48a5ac004d7769a5a1f264e
2014-11-20 12:20:28 -05:00
Sam Tobin-Hochstadt
4a010d2b6d Fix init arg order for Message% type.
original commit: aad0fa5884704b8a4ca3890323199334eba1f31d
2014-11-19 10:57:08 -05:00
Asumu Takikawa
9c4a8d0b62 Fix tooltip test/contracts for TR contract mode
original commit: 6c9172f50f390032dd4da914eb1f66af4c0fa554
2014-11-18 21:38:39 -05:00
Asumu Takikawa
9243ac154c Fix type tooltips for multiple values
This broke when I made the printing lazier using thunks.

Also use regexps for the tooltip tests.

original commit: 8bff995f41be53c119d4d09cb802b1f8c8f5c714
2014-11-18 18:28:58 -05:00
Asumu Takikawa
a42eaad1ca Add tests for TR's tooltip computation
original commit: f9e2231ce9f5df9013865f9311aaa27f4e3a343d
2014-11-18 18:28:58 -05:00
Asumu Takikawa
88e2146757 Use the original syntax to guide tooltip shape
original commit: 1d86e173a5a68147d8316332addcd0619fbdb65e
2014-11-18 18:07:28 -05:00
Asumu Takikawa
724d5e142d Handle case-> types better for tooltips
The use of case-> can cause an expression to get
typechecked multiple times, so the tooltips should reflect
all of the passes.

original commit: c170b8288c74dfd227f90897c4f65979a006cb68
2014-11-18 18:07:28 -05:00
Asumu Takikawa
d02b540d0b Compute type tooltips better for macro expansions
Macros often expand into forms where the subforms have
the same syntax location as the entire form, which means
a naive approach gives confusing type tooltips on macro
expressions.

Instead, only keep the latest (outermost) type tooltip
for a given expression.

We could instead compute whether a given piece of syntax
is a subform of another at a given location or not, but
that check is expensive and we don't want to do that on
every update of the type table.

original commit: c2abbc700d6b8233e4a52f518d8056579d696b5f
2014-11-18 18:07:28 -05:00
Sam Tobin-Hochstadt
0c5d2297cb Fix internal error.
Needs a real fix in the future to actually support this case.
Noted in a program from Matthias Felleisen.

Fixes PR 14841.

original commit: a64dadc78c54fc04bfa8ac8ae9649f4178f0ae25
2014-11-18 17:49:27 -05:00
Asumu Takikawa
0d4b3e6a92 Relax parsing of All types and type annotations
Closes PR 14839

original commit: 27132ee0614955e25c5f1b80ed7f491ffca2de36
2014-11-18 13:59:34 -05:00
Asumu Takikawa
165240384b Memoize static contracts and resulting contracts
This commit uses memoization not just for Name types
but for static contracts for all types. It also adjusts
how Name contracts are generated to increase sharing
across multiple type->contract calls.

original commit: 18c1f095fcf47e0b935819ecb0c3f2b7a3e7fec1
2014-11-14 15:25:37 -05:00
Asumu Takikawa
23d7797c26 Remove dependency field from Name types
This was used for the old method of generating contracts
for these types but is no longer necessary.

original commit: 4d46985e58a0eb9ebe7cbe45063b6a28938df067
2014-11-14 14:55:13 -05:00
Asumu Takikawa
4c65f68004 Simplify construction/matching on Name types
original commit: 49ba06b583ade3ce2b67d38b3ddf9fc35b509eee
2014-11-14 14:08:59 -05:00
Asumu Takikawa
40bf75c689 Minor optimizations in type-alias-helper
original commit: 4b05d835f45226b9f4aa66f427525cb2c1142149
2014-11-14 13:43:57 -05:00
Asumu Takikawa
dcecff2c22 Add tests for two closed TR PRs
original commit: 89782125883555586ec07645ac798c8e28513ff6
2014-11-14 10:41:21 -05:00
Asumu Takikawa
c3997a5f35 Don't print the type at the REPL for Bottom
Closes PR 14829

original commit: 7725262771632dbd6078d03204ca24adaa66891f
2014-11-12 17:55:14 -05:00