Commit Graph

52 Commits

Author SHA1 Message Date
Eli Barzilay
a70bf64fd9 Newlines at EOFs
svn: r15380
2009-07-04 02:28:31 +00:00
Sam Tobin-Hochstadt
5b79cd7c0c Use let/ec instead of let/cc
let/ec: and let/cc:
type for call-with-current-continuation
Start on ImpFilters

svn: r15220
2009-06-19 18:01:33 +00:00
Sam Tobin-Hochstadt
bc6d606a60 Merge in changes to Syntax types from Carl.
svn: r15156
2009-06-12 20:53:47 +00:00
Sam Tobin-Hochstadt
7b82069fa0 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
2009-06-12 19:04:39 +00:00
Sam Tobin-Hochstadt
7d9f506760 Fix a bunch of types and function types
svn: r15133
2009-06-10 21:46:52 +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
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
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
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
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
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
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
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
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
Sam Tobin-Hochstadt
cce7f91b78 fix values->tc-results, doesn't compile yet
svn: r14688
2009-05-02 12:46:53 +00:00
Sam Tobin-Hochstadt
b4d100d60c Fold tc/let-values/check into tc/let-values.
Remove printfs.
More metafunctions to handle splitting and merging filter sets.
Handle `delay', `list', `list*'
Implement tc/funapp for the simple case.
Make `id-from' a stxclass.
Shuffle code around so that it compiles.
Type parsing now handles multiple values properly, and has a values and results entry point.

svn: r14680
2009-05-01 21:18:23 +00:00
Sam Tobin-Hochstadt
91f5c26964 Add `single-value' function, should be used more.
Construct returns correctly in lam-result->type
Add typechecking for `values' applications.
Extend `ret' to handle dty/dbound.
Define conversions from/to values <-> results
Handle multiple values at the repl.

svn: r14665
2009-04-29 22:54:29 +00:00
Sam Tobin-Hochstadt
7b6702c9e7 fix subtyping w/ filters
svn: r14640
2009-04-28 14:56:18 +00:00
Sam Tobin-Hochstadt
077574cfe1 more fixes for lambda with expected
svn: r14639
2009-04-28 14:48:53 +00:00
Sam Tobin-Hochstadt
dfbfc371e2 more printer improvements
svn: r14633
2009-04-27 22:24:47 +00:00
Sam Tobin-Hochstadt
9853ae1f0f Lots more fixes
svn: r14631
2009-04-27 21:16:34 +00:00
Sam Tobin-Hochstadt
f2bffcabab Sync to trunk again.
Fix require/contract.
Subtyping, printing for refinements.

svn: r14626
2009-04-27 18:26:00 +00:00
Sam Tobin-Hochstadt
8cbdf3ee95 compiles again
svn: r14625
2009-04-27 16:06:54 +00:00
Sam Tobin-Hochstadt
fcc2a24545 sync ts to trunk
svn: r14257
2009-03-25 01:07:34 +00:00
Sam Tobin-Hochstadt
537d267314 disable application checking, `3' now typechecks
svn: r14128
2009-03-16 15:28:29 +00:00
Sam Tobin-Hochstadt
c51dd1e8b0 new version of abstract-filters that handles multiple values/arguments properly
strengthen contracts
improve match expanders

svn: r14057
2009-03-11 19:11:50 +00:00
Sam Tobin-Hochstadt
058e78ab17 tc-lambda-unit now compiles
generalize tc-results to handle drest

svn: r14044
2009-03-11 00:15:13 +00:00
Sam Tobin-Hochstadt
18e03efc84 New true-filter and false-filter abbrevs
Fix for Stevie's d-s/c fix.
tc-expr now compiles

svn: r14007
2009-03-07 22:51:54 +00:00
Sam Tobin-Hochstadt
2dbd82e587 Add provides
Use Type/c instead fo Type? in contracts
New if typechecking.
match expanders for tc-result.

svn: r13996
2009-03-06 22:25:19 +00:00
Sam Tobin-Hochstadt
6c30e2d9e7 Remove some old debugging printfs in soon-to-be-dead code.
Fix some requires.
Start implementing metafunctions.
Strengthen contracts on filter-sets.
Rename N B Sym.

svn: r13988
2009-03-06 19:50:42 +00:00
Sam Tobin-Hochstadt
147cac076c handle subtyping for varargs functions
svn: r13962
2009-03-05 00:09:43 +00:00
Sam Tobin-Hochstadt
e53a851bc2 base-env now compiles
svn: r13954
2009-03-04 19:28:48 +00:00
Sam Tobin-Hochstadt
37aa9746ea more stuff compiles
svn: r13952
2009-03-04 18:53:37 +00:00
Sam Tobin-Hochstadt
7847d35842 undo this move
svn: r13947
2009-03-04 16:37:00 +00:00
Sam Tobin-Hochstadt
e8fa7fd4dd more movement
svn: r13945
2009-03-04 16:32:50 +00:00
Sam Tobin-Hochstadt
c819793a82 more stuff works
svn: r13935
2009-03-04 00:13:54 +00:00
Sam Tobin-Hochstadt
9d0ee637c7 Fix name of Type/c
Fix fold on Result.
Add comments.
New -struct constructor with opt args.
Fix tests to agree with contracts.

svn: r13934
2009-03-03 23:18:00 +00:00
Sam Tobin-Hochstadt
f05fcfcf13 all of types/ now compiles
everything that doesn't use Un out of convenience.ss
added -out form for requires

svn: r13931
2009-03-03 22:45:57 +00:00
Sam Tobin-Hochstadt
44902149cb convenience now compiles
svn: r13930
2009-03-03 22:30:08 +00:00
Sam Tobin-Hochstadt
bbfb99bc77 More file movement
svn: r13929
2009-03-03 22:26:15 +00:00
Sam Tobin-Hochstadt
0eda7878d5 fix make-arr
svn: r13926
2009-03-03 21:53:26 +00:00
Sam Tobin-Hochstadt
eaf15594c0 subtype.ss now compiles
svn: r13901
2009-03-03 01:24:06 +00:00
Sam Tobin-Hochstadt
ea86a63e80 move subtype.ss
svn: r13815
2009-02-24 16:23:16 +00:00