Commit Graph

428 Commits

Author SHA1 Message Date
Matthew Flatt
c95a398754 move most of the 'scheme' collection to the 'racket' collection 2010-04-20 15:24:48 -06:00
Sam Tobin-Hochstadt
41e469d7ae Update structure types to have constructor ids.
Use constructor to generate better contracts for poly structs.
2010-04-14 15:06:14 -04:00
Noel Welsh
cfab7a8d97 Add type definition for unsafe-vector*-ref and unsafe-vector*-length, which have recently been introduced, and a test case for in-vector (which uses the above).
svn: r18667
2010-03-30 13:33:45 +00:00
Noel Welsh
302555cf01 Add types for most of Byte and String Output (Section 12.3 of the Reference). Only functions that need an Event type (i.e. matching evt?) are missing. They are commented out as a placeholder for future additions.
svn: r18628
2010-03-26 14:48:33 +00:00
Noel Welsh
af84b331a1 Add the fx to fl conversion functions to Typed Scheme
Add tests for flonum operations to Typed Scheme test suite

Fix the compiler bug tests above uncovered

svn: r18609
2010-03-24 13:18:37 +00:00
Noel Welsh
7c55242179 Add the full suite of fl and unsafe-fl operations to Typed Scheme
Correct an error in documentation of flmin and flmax -- they were documented as taking a single argument when in fact they take two.

svn: r18604
2010-03-23 12:24:50 +00:00
Sam Tobin-Hochstadt
d58bf1521b added (disabled) optimization
svn: r18567
2010-03-17 19:25:21 +00:00
Sam Tobin-Hochstadt
31911dba55 add FlVector as a type
svn: r18559
2010-03-17 17:00:14 +00:00
Sam Tobin-Hochstadt
fe68168e3d these operations do not exist
svn: r18558
2010-03-17 16:51:04 +00:00
Noel Welsh
39a1489403 Add FlVector types to Typed Scheme and bindings for all flvector operations in scheme/flonum and scheme/unsafe/ops.
svn: r18555
2010-03-17 14:49:29 +00:00
Sam Tobin-Hochstadt
b9902e5145 Actual contracts for classes. Yay sstrickl!
svn: r18547
2010-03-15 18:21:15 +00:00
Stevie Strickland
bf56a108fe Need scheme/class's init for use in class/c form.
svn: r18543
2010-03-15 09:04:10 +00:00
Stevie Strickland
5a488ae7cb Add handling of by-name inits to commented-out class/c use in typed-scheme.
Also, fix class/c section of reference slightly by mentioning the role of
external contracts in class instantiation.

svn: r18542
2010-03-15 08:57:41 +00:00
Stevie Strickland
7b831e86a6 Correct with-type so it handles result types of the form (values t ...).
svn: r18531
2010-03-14 02:32:20 +00:00
Sam Tobin-Hochstadt
9035e2e584 Prevent unbound identifiers from being in the base env.
Fix some bugs caught by this.

svn: r18526
2010-03-12 16:25:40 +00:00
Noel Welsh
a8b5f4275a Add scheme/fixnum to the list of require'd modules, meaning the type declarations for fixnum operations are actually bound to the correct functions and so Typed Scheme programs using fixnum ops will actually compile.
svn: r18522
2010-03-12 10:58:26 +00:00
Sam Tobin-Hochstadt
c24daa5dbb Add `define-predicate'
svn: r18497
2010-03-10 00:10:03 +00:00
Sam Tobin-Hochstadt
87f978e59e Fix PR 10813
svn: r18477
2010-03-05 21:52:54 +00:00
Sam Tobin-Hochstadt
e703d52b94 fix PR10810
svn: r18470
2010-03-04 21:42:55 +00:00
Sam Tobin-Hochstadt
b020c8dc21 fix some unfortunate bugs
svn: r18433
2010-03-02 20:37:36 +00:00
Sam Tobin-Hochstadt
33db456f9e fix PR 10735
svn: r18419
2010-03-01 22:51:42 +00:00
Sam Tobin-Hochstadt
78c14e434b Add `with-type' for defintions, add #:result keyword.
Fix contract for top-arr.
Remove static version of printing conditional.
Fix brokenness in print-converting.

svn: r18416
2010-03-01 22:31:24 +00:00
Sam Tobin-Hochstadt
68c46cca9a fix with-types requires on windows
svn: r18387
2010-02-27 19:21:42 +00:00
Sam Tobin-Hochstadt
6c4b1234bf remove obsolete doc files
eliminate repeated expansion

svn: r18382
2010-02-27 16:24:22 +00:00
Stevie Strickland
8e3a67936e Add `unregister-type'
Add type regions.
Untyped lexical vars not an internal error.

svn: r18374
2010-02-27 01:26:16 +00:00
Sam Tobin-Hochstadt
2e90dfc081 Re-enable typechecking of auto-language.ss
Add `syntax-e' as a path.
Turn on contracts for objects.
Refactor Noel's additions.
Fix `require/typed' at the REPL.

svn: r18345
2010-02-26 00:25:23 +00:00
Noel Welsh
dcb01829a0 Fix order of cases in case-lambda expressions for some unsafe-fx operations.
Add the safe equivalents of the unsafe-fx operations.

svn: r18334
2010-02-25 13:00:55 +00:00
Noel Welsh
3d95ef650c Add types for unsafe fixnum operations. This allows support for some sequences; in particular in-range now works in some cases (though still requires type annotations).
svn: r18333
2010-02-25 11:48:33 +00:00
Sam Tobin-Hochstadt
8a11336b51 revert this change, since it breaks insert large letters
svn: r18267
2010-02-22 20:06:34 +00:00
Sam Tobin-Hochstadt
33c18b3985 providing static struct information to untyped code works
svn: r18198
2010-02-19 23:27:06 +00:00
Sam Tobin-Hochstadt
1039e68e03 New representation for free variables, now stored in struct.
Interning now merely used to create key, eq? not = for types.

svn: r18107
2010-02-17 00:09:38 +00:00
Carl Eastlund
52f2ec2e30 Corrected types of hash-update and hash-update!
svn: r18093
2010-02-16 00:55:03 +00:00
Carl Eastlund
08b53c715d Added types for full exception hierarchy.
svn: r18092
2010-02-15 23:22:40 +00:00
Sam Tobin-Hochstadt
89da613073 remove debugging code
svn: r18087
2010-02-15 18:36:26 +00:00
Carl Eastlund
1b28ea1a6c Added automatic blame-tracking to poly/c contract in unstable (and updated use in Typed Scheme).
svn: r18075
2010-02-12 23:03:11 +00:00
Sam Tobin-Hochstadt
90c8fcff11 Generate proper contracts for polymorphic struct types.
Document `Nothing'.

svn: r18074
2010-02-12 21:57:58 +00:00
Sam Tobin-Hochstadt
8bf908d106 More restrictive handling of contracts for the `Any' type.
svn: r18043
2010-02-10 20:45:50 +00:00
Sam Tobin-Hochstadt
89eb249b00 fix dumb typo
svn: r18018
2010-02-08 18:21:43 +00:00
Sam Tobin-Hochstadt
55a48ca594 Fix a number of bugs reported by eli
svn: r18017
2010-02-08 18:17:15 +00:00
Sam Tobin-Hochstadt
bf77c690f4 fix let/ec: and let/cc:
svn: r18000
2010-02-05 23:00:07 +00:00
Carl Eastlund
f9ae636aea Oops, got the types of char->integer and integer->char backwards.
svn: r17991
2010-02-05 06:24:44 +00:00
Carl Eastlund
f2852257bb Added types for char->integer and integer->char.
svn: r17990
2010-02-05 05:22:49 +00:00
Carl Eastlund
578637c691 Added types for missing hash table operations.
svn: r17989
2010-02-05 04:49:49 +00:00
Sam Tobin-Hochstadt
318833f422 Add supertypes for mutable types, so that predicates work correctly.
svn: r17971
2010-02-04 23:39:15 +00:00
Sam Tobin-Hochstadt
1e6aaf5928 new files 2010-02-02 20:42:53 -05:00
Sam Tobin-Hochstadt
2cd7fe5499 Simplify pattern for expressions in type env.
Attempt to avoid doing local-expansion repeatedly.

svn: r17812
2010-01-25 14:46:34 +00:00
Sam Tobin-Hochstadt
5e1b355e32 Syntax for predicates with non-empty paths
svn: r17660
2010-01-14 23:17:56 +00:00
Sam Tobin-Hochstadt
1ab2a41092 Paths for first' and rest'
svn: r17654
2010-01-14 20:00:37 +00:00
Sam Tobin-Hochstadt
91629fd31a Reject some cases of nested types.
svn: r17619
2010-01-12 20:36:30 +00:00
Sam Tobin-Hochstadt
4fa4f6fd2d Propogate expected type through `reverse'.
New loop special case for `for/list'.

svn: r17609
2010-01-11 20:48:26 +00:00