Commit Graph

461 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
a255514ba1 change define-requirer to use library paths to fix build
svn: r15041
2009-06-01 17:15:22 +00:00
Sam Tobin-Hochstadt
c1eb25e47f move additional tests to test dir
svn: r14963
2009-05-23 23:00:23 +00:00
Sam Tobin-Hochstadt
c27dccb9d8 Improve error messages and printing.
Turn off contracts.

svn: r14947
2009-05-22 22:30:24 +00:00
Sam Tobin-Hochstadt
844cbc6782 move new-if to if.
svn: r14942
2009-05-22 22:06:48 +00:00
Sam Tobin-Hochstadt
2a55bec335 remove obselete code
svn: r14941
2009-05-22 22:05:56 +00:00
Sam Tobin-Hochstadt
7d239a4dfa 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
2009-05-22 21:41:12 +00:00
Sam Tobin-Hochstadt
0feb99f6bc Use tc-result1: instead of tc-result: in object handling.
Use tc-results->values instead of bogus version.

svn: r14937
2009-05-22 21:19:46 +00:00
Sam Tobin-Hochstadt
e92a8dd2f5 Avoid spurious quoting.
Use display instead of printf.

svn: r14936
2009-05-22 20:23:15 +00:00
Sam Tobin-Hochstadt
2ee1d2b596 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
2009-05-22 20:07:36 +00:00
Sam Tobin-Hochstadt
23a735ee2f Add contract for make-pred-ty
svn: r14934
2009-05-22 19:43:31 +00:00
Sam Tobin-Hochstadt
7237ad6046 Fix construction of predicate type for `declare-refinement'.
svn: r14933
2009-05-22 19:26:06 +00:00
Sam Tobin-Hochstadt
7e6c1be6b0 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
2009-05-22 19:09:19 +00:00
Sam Tobin-Hochstadt
c8828d0638 Fix keyword argument handling - sort of hackish.
svn: r14924
2009-05-22 18:18:34 +00:00
Sam Tobin-Hochstadt
06e252b1a1 Convert to syntax-parse.
Use tc-results->values where appropriate.

svn: r14891
2009-05-20 23:54:14 +00:00
Sam Tobin-Hochstadt
c4762078e3 Remove lots of debugging code.
Use `needs-resolving?' in subtype.
Make resolve-{app,name} handle not-yet-bound names.

svn: r14890
2009-05-20 23:40:03 +00:00
Sam Tobin-Hochstadt
19c4aa6ba4 Sort unions on re-construction to make contract happy.
Use resolve-once more.
Improve `overlap', in particular use keys.
Resolve names and apps before doing structure comparison.

svn: r14884
2009-05-20 18:35:59 +00:00
Sam Tobin-Hochstadt
6d1257e624 Pass the right argument to unfold.
Fix tc/rec-lambda/check for tc-results in appropriate places.

svn: r14871
2009-05-19 16:27:44 +00:00
Sam Tobin-Hochstadt
eedafc034b Add flag for testing unreachability in env+.
Use flag in if-unit.

svn: r14870
2009-05-19 15:24:55 +00:00
Sam Tobin-Hochstadt
5f1895cfb5 Remove tc/if-twoarm/check
svn: r14860
2009-05-18 22:19:05 +00:00
Sam Tobin-Hochstadt
b8f944679e take path elems from the end
svn: r14859
2009-05-18 22:18:47 +00:00
Sam Tobin-Hochstadt
e269f7aa7c Parse (A -> B : C) correctly, B can't be a `values'
svn: r14858
2009-05-18 22:18:19 +00:00
Sam Tobin-Hochstadt
ef095c931a Make env struct transparent.
svn: r14857
2009-05-18 22:17:32 +00:00
Sam Tobin-Hochstadt
ddefd28d6d Fix handling of structs-as-functions.
Subtyping should look up names in both positions.

svn: r14827
2009-05-15 15:47:22 +00:00
Sam Tobin-Hochstadt
b2cf9c0006 Fix typo so cdrs in paths are handled.
svn: r14826
2009-05-15 15:05:53 +00:00
Sam Tobin-Hochstadt
792bacbd55 turn printing back on
svn: r14817
2009-05-14 18:57:43 +00:00
Sam Tobin-Hochstadt
1047f7625d Handle ValuesDots in check-below.
Fix typo in valuesdots handling in values->tc-results
Handle ValuesDots in do-ret.
Don't try to construct silly wrappers for `apply values'
Don't use rest as list extension if it's #f
Fix tc-result handling for check-subforms/check
Add stronger contracts for Scope
Always generate substitution for infer/dots.
Fix type of `time-apply'

svn: r14815
2009-05-14 18:57:02 +00:00
Sam Tobin-Hochstadt
775fa34f5f Add some contracts in tc/plambda.
Fix handling of tc-results vs types.

svn: r14812
2009-05-14 15:11:33 +00:00
Sam Tobin-Hochstadt
d8c613494e Fix type->contract of function types.
svn: r14810
2009-05-14 14:45:24 +00:00
Sam Tobin-Hochstadt
a47bb9e8c3 inference for filters and objects
svn: r14799
2009-05-13 21:25:56 +00:00
Sam Tobin-Hochstadt
a3fb3575f9 rationalize get-type/infer to handle tc-results.
Fix tc-let to handle tc-results in various places.

svn: r14796
2009-05-13 16:16:39 +00:00
Sam Tobin-Hochstadt
8ca532220a Enable inference for ((lambda with rest args when no annotation on rest arg
svn: r14794
2009-05-13 14:34:44 +00:00
Sam Tobin-Hochstadt
f349525244 Contracts for lexical-env
Fix type of quotient/remainer function

svn: r14792
2009-05-12 21:51:01 +00:00
Sam Tobin-Hochstadt
8fc6e38b11 Fix inference when filters/objects are not needed
svn: r14790
2009-05-12 21:31:21 +00:00
Sam Tobin-Hochstadt
a8a64cfa7c Special case for `call-with-values'
handle subtyping with ... args

svn: r14788
2009-05-12 20:56:32 +00:00
Sam Tobin-Hochstadt
5300481176 Move `hashof' contract combinator to utils/utils.ss
Fix frees for arr to use `fix-bounds' properly.
Match : symbolically in ->*

svn: r14786
2009-05-12 19:53:48 +00:00
Sam Tobin-Hochstadt
ce9f98098d Type goes before symbol in drest.
Handle tc-results properly in a few places.

svn: r14785
2009-05-12 16:53:24 +00:00
Sam Tobin-Hochstadt
7b4081eef1 Allow objects to be specified in ->
Fix overlap to handle overlapping base types (numbers)

svn: r14781
2009-05-12 15:13:17 +00:00
Sam Tobin-Hochstadt
fbae33b1c3 match based on symbol for : in ->
svn: r14758
2009-05-08 23:31:33 +00:00
Sam Tobin-Hochstadt
1444c07c0a polymorphic lambdas are true values.
Use correct pattern.
Return the appropriate types from apply, not the Values struct in the rng.

svn: r14756
2009-05-08 23:11:57 +00:00
Sam Tobin-Hochstadt
c2da52d661 Provide tc-literal.
svn: r14754
2009-05-08 21:41:23 +00:00
Sam Tobin-Hochstadt
9f3d719b4e Fix parsing of All to only use parse-values-type when appropriate.
Fix tests for new names.
Fix tests for parse-type not handling values.

svn: r14752
2009-05-08 20:26:27 +00:00
Sam Tobin-Hochstadt
3575ba8d5f Remove debugging printfs.
Comment tests back in.

svn: r14748
2009-05-08 19:10:12 +00:00
Sam Tobin-Hochstadt
dbe5556b45 Add missing file.
Fix bug in struct type creation.
Add ability to disable printing dynamically.
Fix recursion into objects & paths.

svn: r14747
2009-05-08 19:00:07 +00:00
Sam Tobin-Hochstadt
d2cc1b2400 All code from old app is now in new app
svn: r14740
2009-05-07 20:17:38 +00:00
Sam Tobin-Hochstadt
aa887be6d2 Type inference for ((lambda with rest args
svn: r14739
2009-05-07 17:40:29 +00:00
Sam Tobin-Hochstadt
50696a08a3 Handle polymorphic function application.
Paths work with car/cdr.
Fix #%require/#%provide top-level handling.

svn: r14735
2009-05-06 22:45:12 +00:00
Sam Tobin-Hochstadt
07341c605b Remove `make-arr/values'
Accessors now have appropriate latent objects
Handle function application for unions, error, mu, parameters

svn: r14724
2009-05-05 23:03:02 +00:00
Sam Tobin-Hochstadt
59dbcade9c Handle rest args and case-lambda in app.
Fix parsing.

svn: r14722
2009-05-05 19:10:21 +00:00
Sam Tobin-Hochstadt
6b89062d6a Various constants are true.
Remove useless code.
`combine-filter' now handles producing the new type/object in appropriate cases.
Move student expansion later in pattern match.
Print out top-level tc-results.

svn: r14721
2009-05-05 16:27:18 +00:00
Sam Tobin-Hochstadt
9c538764dc `values->tc-results' needs the formals
Fix values->tc-results for ValuesDots
Don't generate problematic nested lists.
Fix stupid typo.
Parsing of tc-results now doesn't use parsing of values, which does something different.

svn: r14713
2009-05-04 18:49:56 +00:00