Commit Graph

523 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
d570006db8 Add index-env.
- Remove Dotted and DottedBoth values from tvar-env
 - Abstract env extension and lookup for tvar/index-env
 - Abstract index inference
 - Remove pointless parameterizations
2010-06-21 18:29:58 -04:00
Sam Tobin-Hochstadt
40dbb6389c First attempts at adding ListDots (and, incidentally, List*) types. 2010-06-21 18:29:55 -04:00
Sam Tobin-Hochstadt
50f93b9ed7 More environment refactoring.
- rationalize naming of files
- split files by env constructed
2010-06-21 18:29:55 -04:00
Sam Tobin-Hochstadt
647c4eef59 Refactor environments.
- mapping stored as dict
 - use id tables for identifiers
 - use env-filter instead of filter
 - eliminate spurious use of conses
2010-06-21 18:29:54 -04:00
Vincent St-Amour
1e2c50ec24 Fix to make-vector's type. 2010-06-18 20:24:17 -04:00
Vincent St-Amour
5e901b9ef2 The optimizer now promotes integers to floats when they are used as
arguments to a function whose result is a float.
2010-06-18 17:43:05 -04:00
Vincent St-Amour
ecb614849c Added type signatures for some byte-string functions. 2010-06-18 17:43:03 -04:00
Vincent St-Amour
60c3067ddb Turned indexing back to using integers rather than naturals. 2010-06-18 17:43:02 -04:00
Vincent St-Amour
b39f686e7e Fixed the type of unsafe-car and unsafe-cdr. 2010-06-17 19:06:24 -04:00
Vincent St-Amour
07c1f1e94f Added types for some bitwise operations. 2010-06-17 19:06:24 -04:00
Vincent St-Amour
cc796a9f9a Added types for thread mailbox operations.
Can't have typed mailboxes, though.
2010-06-17 18:45:28 -04:00
Vincent St-Amour
c4e035dd67 Got rid of a reference to the non-existent channel/c. 2010-06-17 18:45:28 -04:00
Sam Tobin-Hochstadt
77e4bbb5eb base-types-new -> base-types 2010-06-17 11:47:16 -04:00
Vincent St-Amour
a31a7b0718 Added mutable lists to Typed Scheme. 2010-06-16 12:49:01 -04:00
Vincent St-Amour
bb0747f589 Rewrote the indexing code. 2010-06-16 12:49:00 -04:00
Vincent St-Amour
9959f05054 Moved some indexing functions' type signatures. 2010-06-16 12:48:59 -04:00
Vincent St-Amour
8dfd7d87ec Reimplemented assert as a macro. 2010-06-15 16:39:33 -04:00
Sam Tobin-Hochstadt
4cc86cc8c8 set-mc[ad]r!, inference, printing, tests for mpairs 2010-06-15 16:10:16 -04:00
Sam Tobin-Hochstadt
913179f2ed types for basic mpair ops 2010-06-15 15:58:37 -04:00
Sam Tobin-Hochstadt
b644ec7be4 fix types of `read' functions 2010-06-14 17:35:05 -04:00
Sam Tobin-Hochstadt
81f262c7ca Type for `curry'.
Closes PR 10956
2010-06-14 08:24:43 -04:00
Sam Tobin-Hochstadt
cf5c74a2ca Generate -> instead of ->* when required by case->.
Closes PR 10977.
2010-06-13 15:01:57 -04:00
Sam Tobin-Hochstadt
d4d286d31d Allow (All (A) A -> A), dropping pair of parens. 2010-06-13 14:38:03 -04:00
Sam Tobin-Hochstadt
408d9adb5a add \rightarrow as alias for -> 2010-06-13 14:35:05 -04:00
Eric Dobson
90f015408c Added some stuff to typed scheme, mostly port and character functions. 2010-06-13 08:20:49 -04:00
Vincent St-Amour
c9a96c1d2c Added some closure and promotion type signatures. 2010-06-11 20:55:47 -04:00
Vincent St-Amour
aae1acf035 Fixed a bug in the optimizer that made it optimize where it
shouldn't have.
2010-06-11 20:53:10 -04:00
Vincent St-Amour
de0d9a27dc Fixed string-copy!'s type signature. 2010-06-11 19:48:23 -04:00
Sam Tobin-Hochstadt
7ece2a4872 Fix type of `zero?' to properly handle 0.0. 2010-06-11 18:54:05 -04:00
Sam Tobin-Hochstadt
4f2952f4b9 minor refactorings 2010-06-11 11:55:21 -04:00
Sam Tobin-Hochstadt
490361c0fc Add types for a few more values. 2010-06-10 18:58:44 -04:00
Sam Tobin-Hochstadt
3151566125 Improve TS reference docs
- lots of examples
 - reorganize type listing
 - add Zero type
2010-06-09 15:44:46 -04:00
Vincent St-Amour
2fd1e3ac9f Modified the numeric base type environment. 2010-06-09 14:54:39 -04:00
Vincent St-Amour
04e618388c Added some Bytes and IO-related stuff to Typed Scheme. 2010-06-09 14:54:38 -04:00
Vincent St-Amour
15b0c8542d Added the Thread type and related functions. 2010-06-09 14:54:36 -04:00
Vincent St-Amour
ec799fb208 Added Channel types. 2010-06-09 14:54:35 -04:00
Vincent St-Amour
0741b48c99 Modified the for: macros to use sequence types. 2010-06-09 14:54:34 -04:00
Sam Tobin-Hochstadt
78023d08f9 Sequenceof type.
- inferencing and subtyping relation with vectors, lists, etc
- use in `make-sequence'
- add tests
2010-06-09 11:03:12 -04:00
Sam Tobin-Hochstadt
78832fe332 Support case-lambda with multiple branches with keyword arguments. 2010-06-08 17:50:48 -04:00
Sam Tobin-Hochstadt
0f4db44be3 more precise type for `max' 2010-06-08 12:05:57 -04:00
Sam Tobin-Hochstadt
e44e454b94 Predicates for numeric comparisons. 2010-06-08 12:05:57 -04:00
Sam Tobin-Hochstadt
0199e11edd Add require to base env to fix tests. 2010-06-02 11:26:48 -04:00
Matthew Flatt
4ebe2a0f52 try to fix Typed Racket after 'apply' changes 2010-06-01 21:25:54 -06:00
Vincent St-Amour
2229173b82 Changed the types of some numerical operations to be closed on naturals. 2010-05-29 11:31:47 -04:00
Sam Tobin-Hochstadt
d323a794e8 Change `typed-scheme' numerics.
- `number?' no longer `real?'
 - Number no longer Real
 - remove obsolete environments
 - Fix tests to use Real where necessary.
 - Fix typed/mred and typed/framework
 - Fix insert-large-letters to use `sub1' for type-safe loop

Merge to 5.0.
2010-05-28 19:24:46 -04:00
Vincent St-Amour
e9a0014630 Disabled multi-valued seq-exprs in the for: macros because using them
triggers an internal error in the typechecker.
2010-05-28 19:05:44 -04:00
Vincent St-Amour
49caa00890 Added the for*/X: macros. 2010-05-28 19:05:43 -04:00
Vincent St-Amour
08baa400c3 Punted #:when clause expansion in the for: macros to their
non-annotated counterparts, except in the case of for: itself, where
it doesn't break the semantics of the underlying macro.
2010-05-28 19:05:43 -04:00
Vincent St-Amour
1ec6bd448b Added the for/lists: and for/fold: macros. 2010-05-28 19:05:43 -04:00
Vincent St-Amour
3518428635 Better support for #:when clauses in the for: macros. 2010-05-28 19:05:42 -04:00