Commit Graph

835 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
077ec2440e 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

original commit: 1047f7625d2dfa53d2896fa44fde732873d86ba4
2009-05-14 18:57:02 +00:00
Sam Tobin-Hochstadt
e9a029e899 Add some contracts in tc/plambda.
Fix handling of tc-results vs types.

svn: r14812

original commit: 775fa34f5f0ffeef340e477192606a5beea4734a
2009-05-14 15:11:33 +00:00
Sam Tobin-Hochstadt
37d71ded6f Fix type->contract of function types.
svn: r14810

original commit: d8c613494e838711d2b85cc61607238d4c36baad
2009-05-14 14:45:24 +00:00
Sam Tobin-Hochstadt
30b3106020 Add start of type->contract test suite.
Add test for poly annotation failure.

svn: r14809

original commit: b30338e0c55fcef33a43a844d963ad8cdcee998b
2009-05-14 14:45:07 +00:00
Sam Tobin-Hochstadt
91b2e1d687 inference for filters and objects
svn: r14799

original commit: a47bb9e8c398c86607071632cce1bcf8f840d310
2009-05-13 21:25:56 +00:00
Sam Tobin-Hochstadt
7b43128a36 add require
svn: r14798

original commit: 88159e24792f0e69d324b31b5fabb4b91e4e4ca9
2009-05-13 21:25:41 +00:00
Sam Tobin-Hochstadt
8add889cfe Fix two tests
svn: r14797

original commit: 5f1b4a7daf99c2db91b1b9c1685a0dc9ef65614e
2009-05-13 16:17:01 +00:00
Sam Tobin-Hochstadt
d825cc12d7 rationalize get-type/infer to handle tc-results.
Fix tc-let to handle tc-results in various places.

svn: r14796

original commit: a3fb3575f9daccccc8ec053d585f3e8e9e192748
2009-05-13 16:16:39 +00:00
Sam Tobin-Hochstadt
b9ec9f145e Enable inference for ((lambda with rest args when no annotation on rest arg
svn: r14794

original commit: 8ca532220a402daace37d5b539d5c95c85e83544
2009-05-13 14:34:44 +00:00
Sam Tobin-Hochstadt
67420e1988 Contracts for lexical-env
Fix type of quotient/remainer function

svn: r14792

original commit: f349525244ffac48741b12a147789cbbedd21852
2009-05-12 21:51:01 +00:00
Sam Tobin-Hochstadt
22907160c9 formatting
svn: r14791

original commit: 54eb4cc314dc31b7afdffcf5a1e00d70e02721fd
2009-05-12 21:50:16 +00:00
Sam Tobin-Hochstadt
dd1270237f Fix inference when filters/objects are not needed
svn: r14790

original commit: 8fc6e38b1195cae7463ca277a8e2b06678961eb7
2009-05-12 21:31:21 +00:00
Sam Tobin-Hochstadt
4b6d8992b8 Special case for `call-with-values'
handle subtyping with ... args

svn: r14788

original commit: a8a64cfa7c6f50b7f01ecfe4f06f02e4ed769708
2009-05-12 20:56:32 +00:00
Sam Tobin-Hochstadt
8e3a80596c Fix more tests for false info
svn: r14787

original commit: 82c6720bc9d0ca4e31be19b31630a5781f39949b
2009-05-12 19:54:09 +00:00
Sam Tobin-Hochstadt
2c3994544e Move `hashof' contract combinator to utils/utils.ss
Fix frees for arr to use `fix-bounds' properly.
Match : symbolically in ->*

svn: r14786

original commit: 5300481176a6067d1cf561aeb329ecc6d8f0c99f
2009-05-12 19:53:48 +00:00
Sam Tobin-Hochstadt
f33aee2881 Type goes before symbol in drest.
Handle tc-results properly in a few places.

svn: r14785

original commit: ce9f98098d8c6429e8586d3ff0cbe1cca2477ba0
2009-05-12 16:53:24 +00:00
Sam Tobin-Hochstadt
bc9f01899a Fix more tests with truth info.
svn: r14784

original commit: f24cbf99528313ea078cd74b71b16e4501b70815
2009-05-12 16:52:55 +00:00
Sam Tobin-Hochstadt
1dbac3137a fix wrong results - 25 fails
svn: r14783

original commit: e796cd802bf056a93a0328901b9e6631f1e63ada
2009-05-12 15:30:15 +00:00
Sam Tobin-Hochstadt
3d37ef204b add tests for overlap
fix more typecheck tests - 29 failures

svn: r14782

original commit: c19b66d5db4d25746472d17fbd6f750e3eb474ef
2009-05-12 15:17:30 +00:00
Sam Tobin-Hochstadt
d7d9932f89 Allow objects to be specified in ->
Fix overlap to handle overlapping base types (numbers)

svn: r14781

original commit: 7b4081eef114343991472b0839e336d35301802a
2009-05-12 15:13:17 +00:00
Sam Tobin-Hochstadt
937ac8309a fix tests to handle identifiers, down to 38 fails
svn: r14775

original commit: 1ce4411ceb4d355d9ddda5e073c00923f78b08fb
2009-05-11 19:40:58 +00:00
Sam Tobin-Hochstadt
9f7ae2f23f match based on symbol for : in ->
svn: r14758

original commit: fbae33b1c3d49eca4a8f7d08bcd88f13d10eb4b1
2009-05-08 23:31:33 +00:00
Sam Tobin-Hochstadt
c43a6734ab Fix a lot of tests - 47 fail.
svn: r14757

original commit: a828b89e92728243acea2e58dae064be28d83bbb
2009-05-08 23:12:13 +00:00
Sam Tobin-Hochstadt
43689172b7 polymorphic lambdas are true values.
Use correct pattern.
Return the appropriate types from apply, not the Values struct in the rng.

svn: r14756

original commit: 1444c07c0af3f1ebfffe8db7e3782e96711ea2ef
2009-05-08 23:11:57 +00:00
Sam Tobin-Hochstadt
a7cdd78864 Provide tc-literal.
svn: r14754

original commit: c2da52d661d95092e55a3bdc069949f2a1fe5683
2009-05-08 21:41:23 +00:00
Sam Tobin-Hochstadt
270ea45d4b all tests now compile
svn: r14753

original commit: dcc2ff72d9ba3f2fb21c1485cc86c59246be9dae
2009-05-08 21:38:30 +00:00
Sam Tobin-Hochstadt
5a3369a939 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

original commit: 9f3d719b4eed1f835372f63f71bdfdc837a199cc
2009-05-08 20:26:27 +00:00
Sam Tobin-Hochstadt
f1b012bb42 Rename vars.
svn: r14749

original commit: f6f9b20f17ef5be7a84cd37ab6f8eac883036a65
2009-05-08 20:10:53 +00:00
Sam Tobin-Hochstadt
358a8d5ca6 Remove debugging printfs.
Comment tests back in.

svn: r14748

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

svn: r14747

original commit: dbe5556b45a036e0457dc2f5ae6abcfad31d2947
2009-05-08 19:00:07 +00:00
Sam Tobin-Hochstadt
c6953e5403 All code from old app is now in new app
svn: r14740

original commit: d2cc1b2400a6c15c4103de0a0f4f2561cd0c9ce9
2009-05-07 20:17:38 +00:00
Sam Tobin-Hochstadt
f031868e1b Type inference for ((lambda with rest args
svn: r14739

original commit: aa887be6d2def1ba9f3c57abb82b31f771ff35f9
2009-05-07 17:40:29 +00:00
Sam Tobin-Hochstadt
783581aa49 Handle polymorphic function application.
Paths work with car/cdr.
Fix #%require/#%provide top-level handling.

svn: r14735

original commit: 50696a08a31258428edf4af9d58c84d763a2bc17
2009-05-06 22:45:12 +00:00
Sam Tobin-Hochstadt
e4997f6176 Remove `make-arr/values'
Accessors now have appropriate latent objects
Handle function application for unions, error, mu, parameters

svn: r14724

original commit: 07341c605b9660333444665265a4fb3104efdc6e
2009-05-05 23:03:02 +00:00
Sam Tobin-Hochstadt
dfcd59c8fa Handle rest args and case-lambda in app.
Fix parsing.

svn: r14722

original commit: 59dbcade9c888afac614dba06b4c93cdff64c6b7
2009-05-05 19:10:21 +00:00
Sam Tobin-Hochstadt
7a07559474 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

original commit: 6b89062d6a2e6b35fb24c71d7f0fb839d49546b1
2009-05-05 16:27:18 +00:00
Sam Tobin-Hochstadt
c5bb0e753d `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

original commit: 9c538764dcd499d9b8a04b415a88835ccd55f1c9
2009-05-04 18:49:56 +00:00
Sam Tobin-Hochstadt
f0ec51670c fix values->tc-results, doesn't compile yet
svn: r14688

original commit: cce7f91b78955206b44c180c77b9c6d78be88ce4
2009-05-02 12:46:53 +00:00
Sam Tobin-Hochstadt
da63bcbcb7 more tests
svn: r14685

original commit: 16305c20ff620f56df136583663a735b02f9a3a8
2009-05-02 01:45:50 +00:00
Sam Tobin-Hochstadt
4627335b14 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

original commit: b4d100d60cb99e714374d2db3c75a36167b109cc
2009-05-01 21:18:23 +00:00
Sam Tobin-Hochstadt
4255e1dfab 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

original commit: 91f5c269642ec9ecc62efabcc83131db539fcedd
2009-04-29 22:54:29 +00:00
Sam Tobin-Hochstadt
e79d66e9b8 Rename id to mk-id to avoid name clashes.
Start on new tc-app as copy.

svn: r14660

original commit: c5b4ac4f219f2421ebc2743b2c8afa038109f389
2009-04-29 19:52:53 +00:00
Sam Tobin-Hochstadt
9ded685d1c copy
svn: r14659

original commit: e79ece72c524eb8a187bd905dc98a2ebf8b28755
2009-04-29 19:38:36 +00:00
Sam Tobin-Hochstadt
ac6d723e03 more testing
svn: r14655

original commit: b205f65bec553659e19641c61b7b5d94bb8e25dd
2009-04-29 16:58:20 +00:00
Sam Tobin-Hochstadt
b32d7af9bf Fix reconstruction of Latents, which do not have keys.
svn: r14652

original commit: 6662b72162602e70ea244532c263bb016b0146d0
2009-04-29 14:35:52 +00:00
Sam Tobin-Hochstadt
89ea60ce9b Fix p/c handling of rename.
svn: r14651

original commit: ea03a751137b4be3865258840f84527fd80dcb52
2009-04-29 14:35:26 +00:00
Sam Tobin-Hochstadt
fa0e28678a a couple small fixes
svn: r14643

original commit: ce0032f4c5d1262848d58f48d6846446b3f46f28
2009-04-28 18:53:16 +00:00
Sam Tobin-Hochstadt
3161d6d8a3 fix subtyping w/ filters
svn: r14640

original commit: 7b6702c9e77f1ea1e4adcf52c62cd4fa74cd1a44
2009-04-28 14:56:18 +00:00
Sam Tobin-Hochstadt
6ecd33b765 more fixes for lambda with expected
svn: r14639

original commit: 077574cfe1192c2004b2b1528c103f6b58524359
2009-04-28 14:48:53 +00:00
Sam Tobin-Hochstadt
1ed980a7eb Fixes for letrec.
svn: r14638

original commit: 9118e9ef1263e0d92959b8b96f81c25684e67204
2009-04-28 14:24:09 +00:00