Commit Graph

230 Commits

Author SHA1 Message Date
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
Sam Tobin-Hochstadt
0c730ae50a test improvements
svn: r18814
2010-04-14 17:11:21 +00:00
Sam Tobin-Hochstadt
25a817e4aa Fix thinko in subtyping.
svn: r18802
2010-04-12 22:23:39 +00: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
Sam Tobin-Hochstadt
752e93fc88 add simple tests
svn: r18638
2010-03-27 00:31:29 +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
cf017110a9 Fix a problem generating contracts for FlVector exports. Add test for problem.
svn: r18603
2010-03-23 10:30:24 +00:00
Noel Welsh
5f6aeb364f Check that the FlVector type is exported. Currently this test fails.
svn: r18557
2010-03-17 15:26:30 +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
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
97924ffc65 Add tests for all the fixnum operations. This only checks that the operations have types; semantics and completely specified types aren't rigourously checked.
svn: r18523
2010-03-12 12:13:10 +00:00
Sam Tobin-Hochstadt
b3be4f32f7 Null does not overlap with structs.
svn: r18508
2010-03-10 23:43:47 +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
65b12a2af3 Use `current-contract-region' appropriately.
Maintain source locations.
Fix PR 10776.

svn: r18421
2010-03-01 23:43:15 +00:00
Sam Tobin-Hochstadt
12257912e3 Fix bug 10763.
svn: r18418
2010-03-01 22:48:11 +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
31f0b5e305 Fix tests to use `test-suite' to delay execution.
Move hiding of errors down in stack.

svn: r18381
2010-02-27 15:07:45 +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
21d0dfcf09 use new schemeunit
svn: r18361
2010-02-26 20:44:30 +00:00
Sam Tobin-Hochstadt
1616e27b4b fix comment, add test
svn: r18307
2010-02-23 21:36:53 +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
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
55a48ca594 Fix a number of bugs reported by eli
svn: r18017
2010-02-08 18:17:15 +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
3fc133a0b8 Correct typing for `or'.
svn: r17665
2010-01-15 19:39:46 +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
d69c96cf06 update to the final version of this code
svn: r17658
2010-01-14 22:09:31 +00:00
Sam Tobin-Hochstadt
104adf9c62 Types for the other `check-expect'-style forms.
svn: r17657
2010-01-14 21:24:47 +00:00
Sam Tobin-Hochstadt
1ab2a41092 Paths for first' and rest'
svn: r17654
2010-01-14 20:00:37 +00:00
Sam Tobin-Hochstadt
33592b4f6c Typecheck `or' correctly.
svn: r17653
2010-01-14 19:53:28 +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
Sam Tobin-Hochstadt
f13453e889 `andmap' now works as a predicate in Typed Scheme
svn: r17575
2010-01-08 19:05:58 +00:00
Sam Tobin-Hochstadt
05a0e722f9 use of member, memq, memv as predicates working properly
svn: r17568
2010-01-08 15:55:32 +00:00
Sam Tobin-Hochstadt
0d46fcb48a Create new `typed/test-engine' collection.
Remove dependence of `typed-scheme' on `test-engine'.

svn: r17567
2010-01-08 15:38:17 +00:00
Sam Tobin-Hochstadt
b7f9899439 `member' can now be used a predicate.
svn: r17554
2010-01-07 22:11:54 +00:00
Sam Tobin-Hochstadt
eaad64d612 Better error message for functions that don't have the same arity as
the expected.
Add some tests for errors.

svn: r17551
2010-01-07 21:45:57 +00:00
Sam Tobin-Hochstadt
08457d35e3 Improve error messages in the simple case.
Change 'typecheck to Type Checker in error messages.

svn: r17542
2010-01-07 19:41:42 +00:00
Sam Tobin-Hochstadt
a8e1c829c2 Fix `type-apply'
Fix duplicate filters

svn: r17522
2010-01-07 00:55:51 +00:00
Sam Tobin-Hochstadt
c7cb124c95 Put dynamic behavior of `check-expect' into functions.
Give those functions types.

svn: r17519
2010-01-06 23:03:08 +00:00
Sam Tobin-Hochstadt
b9fd34b925 Fix type of string->number
svn: r17313
2009-12-15 22:03:10 +00:00
Sam Tobin-Hochstadt
22903bffcd Fix handling of logical props in `tc-if'.
New numeric hierarchy.
Quoted lists and vectors now use the expected type, and quoted lists have (List a b c) type.  
Fix some contracts.
More general handling of polymorphic function application.
Use `make-provide/contract-transformer' to generate correct blame for typed provided identifiers.
Add mutable pairs. 
Use `raise-syntax-error' for better error messages in mzscheme.
Use `match*' instead of `list'
Some fixes to appease the contract checking.
Catch-all printing cases.
Use names in Base contract generation.
Types for lots of new primitives.
Move numeric primitives to their own file.
Move indexing primites to their own abstracted file.
Better error message from `define-struct:'
Fix 'insert-large-letters.ss' for new Number hierarchy.
Add `typed/scheme' and `typed/scheme/base', which use new number hierarcy types, stricter indexing types.

svn: r17284
2009-12-13 04:45:17 +00:00
Sam Tobin-Hochstadt
3e497704aa fix unit tests
svn: r17269
2009-12-11 17:01:55 +00:00
Sam Tobin-Hochstadt
791ec55787 fixes
svn: r17265
2009-12-11 00:25:59 +00:00
Sam Tobin-Hochstadt
5767e23d87 checkpoint
svn: r17258
2009-12-10 15:32:17 +00:00
Sam Tobin-Hochstadt
cd0a94d465 sync to trunk
svn: r17249
2009-12-09 19:44:12 +00:00
Sam Tobin-Hochstadt
be77cee733 Fix parsing of quoted lists in types to produce list types.
svn: r17237
2009-12-07 15:50:51 +00:00
Sam Tobin-Hochstadt
70f085713d PR 10647
svn: r17235
2009-12-07 13:55:36 +00:00