Commit Graph

42 Commits

Author SHA1 Message Date
Eric Dobson
0b87c999b3 Make struct types overlap with procedures.
Closes PR11971.
2013-02-20 21:25:02 -08:00
Eric Dobson
a2f33f17e9 Remove tc-results? and other minor improvements. 2013-01-23 18:15:21 -05:00
Eric Dobson
05e53a0de5 Add tc-any-results as new result-type. 2013-01-23 16:41:09 -05:00
Eric Dobson
aac25b42c9 Make AnyValues but don't actually start using it yet. 2013-01-23 16:41:09 -05:00
Eric Dobson
5fe004cd9b Make TR compile with contracts enabled again. 2013-01-15 12:36:42 -05:00
Eric Dobson
f315880b50 Replace uses of Type? with Type/c?. 2013-01-15 12:23:42 -05:00
Asumu Takikawa
13b831f0ec Fix unsound type variable scoping
Closes PR 13123
2012-12-13 17:54:58 -05:00
Asumu Takikawa
5802b42f66 Support path/object reasoning for promises 2012-12-04 18:03:11 -05:00
Ryan Culpepper
fd7d8a412c move lazy-require to racket/lazy-require 2012-12-03 19:28:12 -05:00
Asumu Takikawa
904db66f65 Rename control types to be consistent with other types 2012-11-30 17:37:33 -05:00
Asumu Takikawa
41b59cb46a Add Top types for prompt tags and mark keys 2012-11-30 17:37:32 -05:00
Asumu Takikawa
4b5d6e71fd Typecheck prompt tags 2012-11-30 17:37:32 -05:00
Sam Tobin-Hochstadt
29d54fb0d0 Starting on control typing. 2012-11-30 17:37:32 -05:00
Vincent St-Amour
e2007abd7a Heterogenous -> heterogenEous.
Found by Ray Racine.
2012-11-20 17:06:51 -05:00
Asumu Takikawa
daca1c0d5b Fix a free variance bug
Commit ffe45ecce had introduced a regression with some
polymorphic functions imported between typed modules due to
miscommunicated variance information.
2012-11-09 01:43:57 -05:00
Eric Dobson
8a8dc66a19 Replace uses of Type? in contracts with Type/c. 2012-09-27 18:10:38 -04:00
Eric Dobson
cf4d43c04f Made free-variance have less special cases. 2012-09-27 16:22:22 -04:00
Eric Dobson
ffe45ecce4 Working covariant applications. 2012-09-27 16:22:22 -04:00
Eric Dobson
40809e768d WIP on fixing free-variance. 2012-09-27 16:22:22 -04:00
Eric Dobson
8226b6764c Cleanup of tc-struct and tc-toplevel. 2012-09-27 16:22:21 -04:00
Eric Dobson
6fe850ce39 Clean up contracts in TR. 2012-09-27 16:22:21 -04:00
Eric Dobson
2a8512ed72 Removed unused fields in Struct 2012-09-27 16:22:21 -04:00
Eric Dobson
6e2e84664d Move list-set and list-update to unstable/list. 2012-08-20 14:45:50 -04:00
Eric Dobson
df6562c1de Make promises like every other TR container. 2012-08-14 16:16:07 -04:00
Sam Tobin-Hochstadt
973da6a50c Move define-struct/printer to new file.
Avoids runtime dependency on `racket/generic`.
2012-08-14 10:31:22 -04:00
Eric Dobson
124707921f Remove unused old printer. 2012-08-14 09:45:01 -04:00
Eric Dobson
c9afe15f56 Cleanup TR printer to use lazy-require. 2012-08-14 09:45:01 -04:00
Eric Dobson
56fd9e6321 Rearange type code, so that abbrev.rkt can depend on union.rkt.
Split out base-abbrev.rkt so that subtype is not dependent on abbrev.rkt.
Remove unused code in numeric-tower.rkt so that it is now a dependent of
abbrev.rkt, which allows the body of convenience.rkt to be merged back in.
Remove special casing for union.rkt and extraneous subtyping checks.
Remove union-maker.
2012-08-07 15:50:50 -04:00
Sam Tobin-Hochstadt
4cba6e010f Intern Struct types properly wrt. identifiers. 2012-07-13 17:10:50 -04:00
Sam Tobin-Hochstadt
88f5f4c836 Remove evcase. 2012-07-10 12:49:27 -04:00
Sam Tobin-Hochstadt
20e95f8d8e More refactoring and reduction of runtime dependencies. 2012-06-28 14:34:07 -04:00
Sam Tobin-Hochstadt
08c3f78476 Disable unused code. 2012-06-25 18:07:45 -04:00
Sam Tobin-Hochstadt
88ff5fee69 Minor refactorings.
- Remove tracing requires.
 - Use lists instead of sets in a few environments.
 - Small cleanups.
2012-06-25 18:07:45 -04:00
Sam Tobin-Hochstadt
ccb724155a scheme -> racket 2012-06-25 13:39:07 -04:00
Sam Tobin-Hochstadt
c8380b94e5 Remove testing code, and failed experiment. 2012-06-01 20:08:37 -04:00
Sam Tobin-Hochstadt
a377c42357 Use the new syntax properties for checking keyword functions.
Previously, some hacks were used to obtain the internal
identifiers that implemented keyword functions directly, and
give them types at startup.  Now, the primary "function"
(eg, `sort`) is given a type, and when used, the residual
syntax properties are used to find `sort` from the real
functions, and then the type of the real function is computed
from the type of `sort`.

Some creativity was required in the types of functions which
take optional arguments that when present, alter the return type,
such as `regexp-match*` and `file->list`.
2012-06-01 18:37:02 -04:00
Sam Tobin-Hochstadt
1abb027fc7 Fix Typed Racket build with contracts enabled. 2012-04-06 10:24:49 -04:00
Sam Tobin-Hochstadt
d0fbe825e6 Parameters can overlap with procedure types.
Closes PR 11993.
2012-02-12 14:30:36 -05:00
Vincent St-Amour
40456b4fd8 Add a field to base types to indicate if they are numeric types or not. 2011-09-13 11:22:24 -04:00
Vincent St-Amour
32b56eb2fa Fix whitespace. 2011-09-13 11:22:24 -04:00
Sam Tobin-Hochstadt
076c0fe6d8 Switch to id-table, Rackety. 2011-09-06 11:07:03 -04:00
Sam Tobin-Hochstadt
d2e1cc02dc Move typed-scheme to typed-racket collection.
Compatibilty typed-scheme collection left.
2011-09-03 20:49:39 -04:00