Commit Graph

149 Commits

Author SHA1 Message Date
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
Sam Tobin-Hochstadt
0b7ccf2e4b fix 9967
svn: r15720

original commit: 6af7d327099ad47227a8df7e513b61e7341178a7
2009-08-12 21:52:21 +00:00
Eli Barzilay
01e9263aa0 use spaces instead of tabs to indent output
svn: r15719

original commit: 95f4d1eefe54b69b5ea81de4e4a0cda55e261a99
2009-08-12 21:37:33 +00:00
Sam Tobin-Hochstadt
031ca17732 improve types for numeric predicates
fix pr 9767

svn: r15717

original commit: 50b7a0b190ffea945aa012ad1be005bf3bd15030
2009-08-12 20:42:20 +00:00
Sam Tobin-Hochstadt
3df1a5b1a8 Allow filters/objects to be provided to untyped code.
svn: r15706

original commit: 50545830f2bc3176fb0e34d828d8fdbd4c6eb7fc
2009-08-11 21:00:57 +00:00
Sam Tobin-Hochstadt
534e5e48aa Move student expansion above or.
Improve printing when no object.

svn: r15704

original commit: 28be0897c32bf7d614c0a339c9a6d1271e709b57
2009-08-11 20:19:19 +00:00
Eli Barzilay
40fa4f26b2 Newlines at EOFs
svn: r15380

original commit: a70bf64fd9d68487c128282ca85a8964e1592711
2009-07-04 02:28:31 +00:00
Sam Tobin-Hochstadt
6d02292d53 Use let/ec instead of let/cc
let/ec: and let/cc:
type for call-with-current-continuation
Start on ImpFilters

svn: r15220

original commit: 5b79cd7c0c7ec1298573d15b0c79abd403cdcf58
2009-06-19 18:01:33 +00:00
Sam Tobin-Hochstadt
ab3e94b6e2 Add NoFilter and NoObject to represent no information about filter/object.
Handle these properly in check-below (with test).
Use NoFilter and NoObject to make if typechecking work properly with filters.
Reject mismatched filters/objects (with test).

New version of require/typed that handles opaque and struct requires.
Reorganize docs around this.

svn: r15155

original commit: 7b82069fa0805e3de16c9a49d6c303789fc75419
2009-06-12 19:04:39 +00:00
Sam Tobin-Hochstadt
63589b9574 Improve error messages and printing.
Turn off contracts.

svn: r14947

original commit: c27dccb9d8a5e475bc4b592995c183e1d946cd2b
2009-05-22 22:30:24 +00:00
Sam Tobin-Hochstadt
ec01788aeb move new-if to if.
svn: r14942

original commit: 844cbc678210650cf8c0f7982f1cc4179b46d20b
2009-05-22 22:06:48 +00:00
Sam Tobin-Hochstadt
aecfeceb3b remove obselete code
svn: r14941

original commit: 2a55bec3352dff0b9d29ba72d5df61bb0a16b94f
2009-05-22 22:05:56 +00:00
Sam Tobin-Hochstadt
136f8c4f80 Instances can have any Type as their class.
Fix some handling of tc-results as pertains to classes.
Bottom is an ok Class.

svn: r14938

original commit: 7d239a4dfaa5d44e2bdbb8ebc31b72bbd3f87b61
2009-05-22 21:41:12 +00:00
Sam Tobin-Hochstadt
39eca53d55 Use tc-result1: instead of tc-result: in object handling.
Use tc-results->values instead of bogus version.

svn: r14937

original commit: 0feb99f6bc08fdff518cf9587438ab4e46493166
2009-05-22 21:19:46 +00:00
Sam Tobin-Hochstadt
09d6ee6b77 Untyped top-level variables are not an internal error.
Handle latent filter of LBot in values->tc-results when there are no formals.
Use check-below properly in tc/mono-lambda/type

svn: r14935

original commit: 2ee1d2b5962343cd86e520879e88b7e092cf3bb7
2009-05-22 20:07:36 +00:00
Sam Tobin-Hochstadt
44e0580370 Fix construction of predicate type for `declare-refinement'.
svn: r14933

original commit: 7237ad6046a636b4ce0f5f1354fc0ff9237e416c
2009-05-22 19:26:06 +00:00
Sam Tobin-Hochstadt
e48efb7618 Handle return of Bottom to context which expectes multiple values.
Check values length before using for/and.
Add back ormap/andmap special case for ... args.

svn: r14930

original commit: 7e6c1be6b0886bcd73e308930f313341eaa73add
2009-05-22 19:09:19 +00:00
Sam Tobin-Hochstadt
ec5105962f Fix keyword argument handling - sort of hackish.
svn: r14924

original commit: c8828d0638d6d6ccc1e437ae79e5b82a9937b6ce
2009-05-22 18:18:34 +00:00
Sam Tobin-Hochstadt
4e1108f138 Convert to syntax-parse.
Use tc-results->values where appropriate.

svn: r14891

original commit: 06e252b1a15cfe159f4f6c2047ccbaf01e895009
2009-05-20 23:54:14 +00:00