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