Commit Graph

167 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
00bd3adab8 More restrictive handling of contracts for the `Any' type.
svn: r18043

original commit: 8bf908d1061510198bb6a155fee7a25312bea714
2010-02-10 20:45:50 +00:00
Sam Tobin-Hochstadt
0db7c6d821 Fix a number of bugs reported by eli
svn: r18017

original commit: 55a48ca594bc7e3834bfbebea7fc5a1967c278d1
2010-02-08 18:17:15 +00:00
Sam Tobin-Hochstadt
4c1cf6b520 Add supertypes for mutable types, so that predicates work correctly.
svn: r17971

original commit: 318833f4226d9249077c772f87ee705ecfd4c617
2010-02-04 23:39:15 +00:00
Sam Tobin-Hochstadt
8d5eb1decf Fix the handling of with-handlers that returns multiple values
svn: r17823

original commit: af2ef07d05adc6ca454467f3f9fd3ed8a8f5a501
2010-01-25 19:51:16 +00:00
Sam Tobin-Hochstadt
c6c381a207 use syntax-parse
support #:predicate option to `define-typed-struct-internal'

svn: r17822

original commit: c9b246a8d2f15a27cc438b8827ec6eef0232b16e
2010-01-25 19:35:56 +00:00
Sam Tobin-Hochstadt
674c88a752 Improve `internal-forms'
First step to custom predicates in `define-typed-struct-internal'

svn: r17820

original commit: bb541fd03fa0b35e22f0c82f6c9b3a8a6d5b0591
2010-01-25 18:38:56 +00:00
Carl Eastlund
d7fe71a64b Updated typed scheme to use a module path for blame.
svn: r17754

original commit: 87645ebd114088d1b1fb368df01c1ba2253eb90c
2010-01-19 10:44:27 +00:00
Sam Tobin-Hochstadt
34bb0090a0 Correct typing for `or'.
svn: r17665

original commit: 3fc133a0b84476a121b129f41e2c260e0d4593c0
2010-01-15 19:39:46 +00:00
Sam Tobin-Hochstadt
fba861f6df Typecheck `or' correctly.
svn: r17653

original commit: 33592b4f6c40faf63015fcf33e1874322007b03c
2010-01-14 19:53:28 +00:00
Sam Tobin-Hochstadt
46365587b2 Reject some cases of nested types.
svn: r17619

original commit: 91629fd31ace6700a6864c0db826c89e2987c1a2
2010-01-12 20:36:30 +00:00
Sam Tobin-Hochstadt
2022bc7b80 `reverse' is special on all tuples
svn: r17612

original commit: 81e963bd465ed66018506002a3b9a18f9c648493
2010-01-11 22:13:22 +00:00
Sam Tobin-Hochstadt
62d3dc1466 Propogate expected type through `reverse'.
New loop special case for `for/list'.

svn: r17609

original commit: 4fa4f6fd2d814de10e84300d1da76a311bf85160
2010-01-11 20:48:26 +00:00
Sam Tobin-Hochstadt
9364f5b9cc use of member, memq, memv as predicates working properly
svn: r17568

original commit: 05a0e722f9b64d0d53fb5b168181b467a4711ec7
2010-01-08 15:55:32 +00:00
Sam Tobin-Hochstadt
e0ceba24a8 `member' can now be used a predicate.
svn: r17554

original commit: b7f989943931dbd7aec58f238a9e9c66c1142f3b
2010-01-07 22:11:54 +00:00
Sam Tobin-Hochstadt
cffc0e2563 Better error message for functions that don't have the same arity as
the expected.
Add some tests for errors.

svn: r17551

original commit: eaad64d6120e70e59200fb2cec58f4af5a777ed4
2010-01-07 21:45:57 +00:00
Sam Tobin-Hochstadt
7b4164e4cb Error on duplicate type annotations.
svn: r17549

original commit: 62653d3c41b97de732aacc932bd123a8fd9ecb21
2010-01-07 21:20:45 +00:00
Sam Tobin-Hochstadt
b1869b6882 Improve error messages in the simple case.
Change 'typecheck to Type Checker in error messages.

svn: r17542

original commit: 08457d35e3faa1a8dccbcbfc6b193c63fda45fb6
2010-01-07 19:41:42 +00:00
Sam Tobin-Hochstadt
e044410d4e Fix `type-apply'
Fix duplicate filters

svn: r17522

original commit: a8e1c829c2e78744c20d6bd2b33bdb800f2a3b31
2010-01-07 00:55:51 +00:00
Sam Tobin-Hochstadt
2669a3269a Fix abstraction of implications.
Fix contract for lookup-typed/lexical.
Default cases for printing.
Abstract out indexing functions for Nat/Integer split.

svn: r17272

original commit: d0c8a19ce84ce1ef674c1c43e69b56ee7e0a63a2
2009-12-11 23:00:37 +00:00
Sam Tobin-Hochstadt
21f9c0ec16 fixes
svn: r17265

original commit: 791ec557876881eaeafc29a43b339b7a7d632d84
2009-12-11 00:25:59 +00:00
Sam Tobin-Hochstadt
4741518170 logic works properly now, it seems
svn: r17264

original commit: 92dbf999651f54b7efd8167427db9aa2f38512d1
2009-12-10 23:35:28 +00:00
Sam Tobin-Hochstadt
b68c553664 checkpoint
svn: r17258

original commit: 5767e23d875f1248e23132fe11f5b6b4ffb5cc39
2009-12-10 15:32:17 +00:00
Sam Tobin-Hochstadt
445c65e12e checkpoint
svn: r17054

original commit: e3bafbe298688ec0efe47a09254492f93027fa71
2009-11-25 02:30:41 +00:00
Sam Tobin-Hochstadt
09febf87c2 checkpoint
svn: r17045

original commit: 29c4a84183f15c98093973fae3fe7ec20a9fd8a3
2009-11-24 17:10:44 +00:00
Sam Tobin-Hochstadt
b2056bab7d use `make-provide/contract-transformer'
svn: r16949

original commit: 406b5c384d446b9b275971d14a690b7c71d12cac
2009-11-21 22:21:36 +00:00
Sam Tobin-Hochstadt
7d85ae8997 checkpoint
svn: r16915

original commit: 485c8a356708bb1f59c942529dd77bd455a6c82d
2009-11-20 05:20:23 +00:00
Sam Tobin-Hochstadt
9e87d52ba1 many fixes
svn: r16913

original commit: 1da2c7cd7d45b7f8a53d1892609e135820ef4301
2009-11-20 03:56:57 +00:00
Sam Tobin-Hochstadt
a1f96d6ce8 checkpoint
svn: r16908

original commit: 111b71c844707b146bbc1500dc086ef3c5ef7070
2009-11-20 00:06:32 +00:00
Sam Tobin-Hochstadt
812d2549dd remove tracing
svn: r16872

original commit: 424aa9049107a30e2d625eb2d06ff9fcd9e7eefb
2009-11-18 16:41:01 +00:00
Sam Tobin-Hochstadt
9dbe7c808f Add unstable/match with == match expander.
Add 'match expander' tech def.

svn: r16814

original commit: 0ae5843f1163a247f776b47ac29e38e31664bc03
2009-11-16 16:58:11 +00:00
Sam Tobin-Hochstadt
2c76766c1c Move a bunch of functions from typed-scheme/utils/utils to unstable.
Add convenience lib for unstable docs.
Add char support to format-{id,symbol}
Add unstable/sequence library.

svn: r16789

original commit: fb29a2498e964c6d7651ca6cc6a19c07ca28760b
2009-11-15 22:15:29 +00:00
Sam Tobin-Hochstadt
1d3800bfd8 Move mutated-vars and poly-c libraries to unstable collection.
- add docs
 - change requires
 - fix `letrec-syntaxes+values'
Fix contract on `author+email'

svn: r16628

original commit: 99a70b38d8c16c84174534d9ae9c3b413e566743
2009-11-09 02:29:02 +00:00
Sam Tobin-Hochstadt
a714f51138 Use tail-position syntax property for non-functions.
svn: r16451

original commit: 6d70a48de13cbc2e54535c274144adb741d8aba1
2009-10-29 18:02:33 +00:00
Sam Tobin-Hochstadt
2ca3a9176f Allow optional keyword args in a few more places
svn: r16400

original commit: 38fe4782b75eb88e4db750921bade80147f453b9
2009-10-21 14:47:56 +00:00
Sam Tobin-Hochstadt
382a771d75 Better error message for inference with keywords.
Do inference when loop is unannotated, even when argument are.
Don't infer for ((lambda when vars are annotated.
Make promise contracts work.
Fix types of min, max, port->lines, subbytes,  bytes-length, bytes, bytes-ref

svn: r16397

original commit: a5849fb05af85c586bbd730d220b324018a6673e
2009-10-21 13:30:03 +00:00
Sam Tobin-Hochstadt
387ee8193b Add `typed/scheme/system'
Special handling of (letrec ([x e]) x)
Allow functions with optional keyword args to be inferred when kws not supplied.
Infer instantiations for kw functions in simple cases.
Add `Path-String' type
Fix types of `filter', `with-{input-to,output-from}-file'
Add `port->lines'
New 'metrics.ss' test

svn: r16385

original commit: 37106bd6f7241277288ad56a3c75aef53cdfc3c3
2009-10-20 18:30:37 +00:00
Sam Tobin-Hochstadt
9c607d6779 Don't error for branches with wrong number of results where return type is Bot.
Allow case-lambda to be subtype of equiv union type.
Add types for path?, fold-files, assert

svn: r16357

original commit: 6a83901a8bd60ccea014f84238a378749573beb2
2009-10-18 01:10:00 +00:00
Eli Barzilay
43b5710477 require trace, not
svn: r16223

original commit: 44fda2f304627a0e36f8e505cf5bf3bd9d4ff729
2009-10-02 20:37:03 +00:00
Sam Tobin-Hochstadt
cc3c031d80 Fix bug with use of match with ... and annotation.
svn: r16216

original commit: 6efd0abc13711b0ca3f75b7c6460291ffb77b8d9
2009-10-02 16:20:30 +00:00
Ryan Culpepper
8eb494615f removed old stxclass collection
Please apply to release branch.

svn: r16047

original commit: 987ab4c5e8c4548b9eb87f6f78c75b6877118065
2009-09-17 16:11:20 +00:00
Sam Tobin-Hochstadt
535ec1720f fix uses of syntax-parse attributes
svn: r15984

original commit: ed65dacdcd2c4c2d2cfe2177865598c97903dfd7
2009-09-11 22:49:56 +00:00
Sam Tobin-Hochstadt
87d48f63ef Remove last uses of stxclass.
svn: r15976

original commit: 5fc019ba6c8d0a9ca21c05c4a92f8476e348f407
2009-09-11 17:49:50 +00:00
Sam Tobin-Hochstadt
8898a34829 Remove almost all uses of `stxclass' library.
svn: r15944

original commit: eda69b472ad5de8874ddf99b40f04dea22a9672e
2009-09-09 21:24:05 +00:00
Sam Tobin-Hochstadt
cf872c4e38 New type parser, written using syntax/parse.
- uses keywords with bindings
 - : macro in separate file so it can be used earlier
 - internal function in separate file
FilterSet/c and LatentFilterSet/c contracts
Avoid returning #f when `look-for-in-orig' fails
Add type for unsafe-cdr

svn: r15923

original commit: 63d318fd4b7e7244af10fff21db74f0d09db5006
2009-09-08 19:51:34 +00:00
Sam Tobin-Hochstadt
5caab968c2 fix keyword application handling for new expansion
svn: r15864

original commit: 799027d40f74bcb08071bf4ecd222d5c3133b67c
2009-09-03 07:54:32 +00:00
Sam Tobin-Hochstadt
c315e83375 Handle type ascription and type instantiation better with expected type.
Add remove-ascription
Identify incorrect element of wrongly typed list.
Use function argument types as expected types.
Allow multiple uses of orig-module-stx, older one takes precedence.

svn: r15857

original commit: b3dde2ca7f0e343e207deb2d983785a7fea64a1b
2009-09-01 22:25:35 +00:00
Sam Tobin-Hochstadt
dec8803f27 when result type is dotted, pass it through tc-expr/check
svn: r15737

original commit: 5174bbb5f062011c2edfe7a0403071055830f55f
2009-08-14 20:27:53 +00:00
Sam Tobin-Hochstadt
1d9468f30a return a better type
svn: r15736

original commit: 83e0ec2b407fc06092757cdec0ec898c415b3818
2009-08-14 19:44:46 +00:00
Sam Tobin-Hochstadt
51eff5eeb3 improve docs for opaque types
fix pr 10106

svn: r15723

original commit: 79c4f9651eb49299e22631d5a0342f84e52237d9
2009-08-12 22:22:54 +00:00
Sam Tobin-Hochstadt
f5e92fdd23 fix pr 10097
svn: r15722

original commit: 614980f6ec32bab5f18aada279d008501ec21898
2009-08-12 22:05:41 +00:00