Commit Graph

810 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
0333d4f210 Simplify a syntax class
svn: r15977

original commit: 8001ab7fb0254cde97a76afb61e1d0a1a5fb786d
2009-09-11 19:19:41 +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
34a2dda59c Make type keywords show check syntax info
svn: r15925

original commit: bc25b75eb39e85c21fd23b95706295b158c11463
2009-09-08 20:16:48 +00:00
Sam Tobin-Hochstadt
521dee2bb5 Move parse-type2 to parse-type.
Re-enable typed-scheme tests automatically.

svn: r15924

original commit: 4907d266df8438b6f0f4a3e3fd0241702ab46b57
2009-09-08 20:02:03 +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
Matthew Flatt
dc68f722ee unsafe ops (v4.2.1.8)
svn: r15899

original commit: 8ae0ea9d14716c94f73c5c85f8278934fe85fe15
2009-09-06 18:24:46 +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
240f4eaeb3 remove extra whitespace
svn: r15863

original commit: 9e25d28a28306bf397ae40c06ebf07fdce7b8f1c
2009-09-03 07:53:39 +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
d4b5a51fce New tests
svn: r15856

original commit: 95cb438a9c7dca02d4a55c949f27601af07bbd59
2009-09-01 22:22:37 +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
4bc1a32ad1 fix 9979
svn: r15721

original commit: 1e5cb7d603ff13ce47ad4e09dec9ada8f9bb46ac
2009-08-12 21:55:04 +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
c555ae3a9b Improve error messages from require/contract
svn: r15716

original commit: 35336e77b86d137b21f36f1f216bd50ae98d0050
2009-08-12 20:28:08 +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
2b0465d253 add getenv and pretty-print etc.
svn: r15705

original commit: c27783830a1846857c82478e50c7380faa5f861b
2009-08-11 20:44:45 +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
Sam Tobin-Hochstadt
4a448aa21d document define-struct/exec:
svn: r15703

original commit: 9649e10df843371f6c0436eb2024547767c38d79
2009-08-11 20:05:31 +00:00
Sam Tobin-Hochstadt
018b998e24 Prohibit predicates, unions of tvars in contracts
Add vector?

svn: r15701

original commit: b23016f86afbdd98a73fcb8f71d71a6ee5b8891c
2009-08-11 19:35:34 +00:00
Sam Tobin-Hochstadt
af1593c0ea New contracts for hashtables, vectors, boxes
svn: r15646

original commit: 1ea71ea94b86f9454825bebbc86215b73ede3f19
2009-07-30 21:15:16 +00:00
Sam Tobin-Hochstadt
71e1b33d99 struct->vector
svn: r15645

original commit: 55c9f55cf3e127fa748c619e78adffa5215b3750
2009-07-30 21:00:04 +00:00
Sam Tobin-Hochstadt
93bdf0ebba remove c
svn: r15644

original commit: 1977ab070999d88811c345ea7832432e1a4b3ca0
2009-07-30 20:13:28 +00:00
Sam Tobin-Hochstadt
b168bed203 Add some hash functions
svn: r15642

original commit: 7888fa5dc66fef9d8fe20063d6f7d71415130ec1
2009-07-30 19:30:05 +00:00
Noel Welsh
c1b6706298 Add types for:
- regexp? 
- pregexp? 
- byte-regexp? 
- byte-pregexp? 
- regexp 
- pregexp 
- byte-regexp 
- byte-pregexp 
- regexp-quote 
- read-bytes-line

svn: r15595

original commit: 9c7584b8c80771bed4d2983617695c6564b719c5
2009-07-28 10:41:27 +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
36dd39a994 add index entries
svn: r15206

original commit: d7f0c681c7504224a87e9fa1d4604db9cdfc11c1
2009-06-18 17:02:40 +00:00
Carl Eastlund
1a71d5e3a3 Added types for string-copy and string->immutable-string.
svn: r15202

original commit: a06c6b38aa839860a6157b0644d7ab17ba964167
2009-06-18 00:59:04 +00:00
Carl Eastlund
ee04be2096 Added types to the srcloc structure.
svn: r15201

original commit: 21033a3e3c9af14c0bd06c291b0e9c779e43b869
2009-06-17 22:28:21 +00:00
Carl Eastlund
db8dddad38 Added types for:
- keyword?
 - string->keyword
 - keyword->string
 - char-upcase
 - char-downcase
 - char-titlecase
 - make-rectangular
 - make-polar

svn: r15200

original commit: f110157ac27b3dd3bac54dbed99386ae2ba66631
2009-06-17 21:08:35 +00:00
Sam Tobin-Hochstadt
c8cf1953e5 Use vector-immutableof' and box-immutable/c' to handle boxes and vectors.
svn: r15199

original commit: cfd65e7fa2ec01f345c6092c308c6894557dc7b6
2009-06-17 20:49:13 +00:00
Carl Eastlund
f2d1a88bf5 Added a test for new datum->syntax type clauses.
svn: r15159

original commit: 6ae56e5348b9bcf1033a5f67242aab6769d32ca1
2009-06-12 23:36:08 +00:00
Sam Tobin-Hochstadt
f7019a6a2b Merge in changes to Syntax types from Carl.
svn: r15156

original commit: bc6d606a604a999da46a18b7d01b8d39c7b0b7cb
2009-06-12 20:53:47 +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
Carl Eastlund
3e612cbb93 Corrected types for source location in lists passed to datum->syntax.
Corrected types for peek-* functions (which may return EOF).
Added type for read-byte.

svn: r15137

original commit: e53b944fb3261c20322965f7671e08df5f7c5608
2009-06-10 23:38:52 +00:00
Sam Tobin-Hochstadt
bbcaf97689 export type names
svn: r15134

original commit: cdca1d610894cb93ac1268c2bd4ca3cebbf69368
2009-06-10 21:50:50 +00:00
Sam Tobin-Hochstadt
9428ed0010 Fix a bunch of types and function types
svn: r15133

original commit: 7d9f506760dd7d068641eea5f89c15e36a45d837
2009-06-10 21:46:52 +00:00
Sam Tobin-Hochstadt
a9bff72959 add split-at and append*
svn: r15119

original commit: 513987519940efd23a801dacf8ba35364758228d
2009-06-08 15:54:05 +00:00
Sam Tobin-Hochstadt
17a3d0944e hash table keys are contravariant, not covariant
svn: r15077

original commit: e14e58c8df07a874c5a9093c9453de92f3ab04f2
2009-06-04 14:38:59 +00:00
Sam Tobin-Hochstadt
b659f1b16a change define-requirer to use library paths to fix build
svn: r15041

original commit: a255514ba1bba6b92f2534537ba4706ceed2bf6b
2009-06-01 17:15:22 +00:00
Sam Tobin-Hochstadt
e9b660cc63 move additional tests to test dir
svn: r14963

original commit: c1eb25e47fe682861017fad901e23e0e9f626045
2009-05-23 23:00:23 +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
7d38e20994 Avoid spurious quoting.
Use display instead of printf.

svn: r14936

original commit: e92a8dd2f546b2e429e6776b064de119c2593852
2009-05-22 20:23:15 +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
85ceb35511 Add contract for make-pred-ty
svn: r14934

original commit: 23a735ee2ff321b69746f2cdacb01fbc0c874b5e
2009-05-22 19:43:31 +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
ff29088667 Add unit tests for andmap of ..., Bot return to MV context
svn: r14929

original commit: e772687a583966b882912904b9a2cfe365e1bb17
2009-05-22 19:08:12 +00:00
Sam Tobin-Hochstadt
1a133d64f9 Add test of andmap.
svn: r14928

original commit: 5b7249eea551979eac88b199b270f5800cdad42a
2009-05-22 19:04:22 +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
Sam Tobin-Hochstadt
8ccd47ab1c Remove lots of debugging code.
Use `needs-resolving?' in subtype.
Make resolve-{app,name} handle not-yet-bound names.

svn: r14890

original commit: c4762078e32003f60402872f27ce94f2561f7b15
2009-05-20 23:40:03 +00:00
Sam Tobin-Hochstadt
1265433a2e 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

original commit: 19c4aa6ba450fdbcaf927fd6391987cc4deca69e
2009-05-20 18:35:59 +00:00
Sam Tobin-Hochstadt
fc2b7f344d Pass the right argument to unfold.
Fix tc/rec-lambda/check for tc-results in appropriate places.

svn: r14871

original commit: 6d1257e624f6165003af3ddb53d8a3fdf91a14ce
2009-05-19 16:27:44 +00:00
Sam Tobin-Hochstadt
65c216e99d Add flag for testing unreachability in env+.
Use flag in if-unit.

svn: r14870

original commit: eedafc034b99545161a3a3d254cbf43d73cc8b55
2009-05-19 15:24:55 +00:00
Sam Tobin-Hochstadt
e8872656b5 Add test for unreachble code with expected type.
svn: r14869

original commit: 0cd135c3bb0f2250fd23613ad07fc3d298eeb052
2009-05-19 15:24:12 +00:00
Sam Tobin-Hochstadt
164416b707 add syntax locations to cond* macro
svn: r14868

original commit: f71249500992e1b9a0729b1340d7ecc20cd8d563
2009-05-19 15:23:57 +00:00
Sam Tobin-Hochstadt
a3d05e4cec Remove tc/if-twoarm/check
svn: r14860

original commit: 5f1895cfb587de8072572cdd3090db8e355a3d26
2009-05-18 22:19:05 +00:00
Sam Tobin-Hochstadt
2799f30a5f take path elems from the end
svn: r14859

original commit: b8f944679e9ff255d094c4b50baa619364ae2813
2009-05-18 22:18:47 +00:00
Sam Tobin-Hochstadt
0c647544df Parse (A -> B : C) correctly, B can't be a `values'
svn: r14858

original commit: e269f7aa7c0bf75b823e5f67931b4a9c5fb61723
2009-05-18 22:18:19 +00:00
Sam Tobin-Hochstadt
d6a1b098ca Make env struct transparent.
svn: r14857

original commit: ef095c931a30c98adf4dc2f326780f62173be9bd
2009-05-18 22:17:32 +00:00
Sam Tobin-Hochstadt
3a21f89ecd make struct-exec a little more interesting
svn: r14828

original commit: 7a24d39348fc652863895491310d101cfd7513cd
2009-05-15 15:47:57 +00:00
Sam Tobin-Hochstadt
936629c1b1 Fix handling of structs-as-functions.
Subtyping should look up names in both positions.

svn: r14827

original commit: ddefd28d6d2bc1b5bacb7f2ef6667e90d6ba8165
2009-05-15 15:47:22 +00:00
Sam Tobin-Hochstadt
16f0b6a30b Fix typo so cdrs in paths are handled.
svn: r14826

original commit: b2cf9c0006bb8db35d1de5a0d48042d8958b48c2
2009-05-15 15:05:53 +00:00
Sam Tobin-Hochstadt
bea5e0d9b1 turn printing back on
svn: r14817

original commit: 792bacbd557e6395516f2d1d6686ce527014444e
2009-05-14 18:57:43 +00:00
Sam Tobin-Hochstadt
e81e3049b0 add test of `apply values'
svn: r14816

original commit: af623cbdc7a021caefe909460df7ec59212e138f
2009-05-14 18:57:23 +00:00
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
Sam Tobin-Hochstadt
33ec27925d lots of let improvements
and check rationalization

svn: r14635

original commit: 5a49e92de7e48a52482a3287846a8a37b8d42de4
2009-04-27 23:25:34 +00:00
Sam Tobin-Hochstadt
b0634cd6af fixes for plambda
svn: r14634

original commit: 2e2e9b8acf4cb8e48327f4f29229577bee19a006
2009-04-27 22:44:42 +00:00
Sam Tobin-Hochstadt
7b651a3856 more printer improvements
svn: r14633

original commit: dfbfc371e25badd5bae47a0f099466e19fe2010a
2009-04-27 22:24:47 +00:00
Sam Tobin-Hochstadt
e3f499b605 more contracts
more fixes

svn: r14632

original commit: af7b966c82cf3ed41ec4a3acf37e5503033ce912
2009-04-27 21:58:35 +00:00
Sam Tobin-Hochstadt
4329ac34db Lots more fixes
svn: r14631

original commit: 9853ae1f0f0d7c4791bc2237ab8183f6102ffa50
2009-04-27 21:16:34 +00:00
Sam Tobin-Hochstadt
4495909274 use correct constructor
svn: r14630

original commit: 4d8ba2bca691a99f48a332b1c3cc4dab7f61d7dd
2009-04-27 20:15:14 +00:00
Sam Tobin-Hochstadt
fca47159f2 two fixes
svn: r14629

original commit: 18f89c73e43e160c26a3f42d6d118f022ac3814a
2009-04-27 20:11:57 +00:00
Sam Tobin-Hochstadt
f4ebee3d68 Sync to trunk again.
Fix require/contract.
Subtyping, printing for refinements.

svn: r14626

original commit: f2bffcabab6e027a2cd59dc78ab0fd5a77be99c7
2009-04-27 18:26:00 +00:00
Sam Tobin-Hochstadt
8b96f98595 compiles again
svn: r14625

original commit: 8cbdf3ee951ce80178ff79b135906cb3d56c5a7e
2009-04-27 16:06:54 +00:00
Sam Tobin-Hochstadt
415acf88ff Clarify docs.
svn: r14615

original commit: 119fd5bc95aa637fdee27c30223ccb63f80fdd25
2009-04-26 17:55:02 +00:00
Sam Tobin-Hochstadt
9751e87403 fix conflicts
svn: r14601

original commit: 994f0205f49bb8960b118ca0dda8dae740b1ab1c
2009-04-24 21:30:18 +00:00
Sam Tobin-Hochstadt
ba8d0ff816 resolve conflicts
svn: r14598

original commit: 1edf62a912ac0468c2a995043c58826607d645dc
2009-04-24 21:21:06 +00:00
Sam Tobin-Hochstadt
93291d7e72 type for append-map
svn: r14579

original commit: 062008c7586ec2192d1a3b51f6a27402a8e7efb9
2009-04-21 22:51:55 +00:00
Sam Tobin-Hochstadt
4d2d5bfc9f remove debug printf
svn: r14578

original commit: 1edd4770f4f73daf82601a20d9e4c44854fee261
2009-04-21 17:43:33 +00:00
Sam Tobin-Hochstadt
a5c24172b8 Fix handling of filters that refer to out-of-scope vars
svn: r14574

original commit: 60325b670c25276dddcf904b801bbde922ca2302
2009-04-21 16:13:00 +00:00
Sam Tobin-Hochstadt
a6b5a432c0 Add test for match improvements.
Improve handling of inference for let loop.  

svn: r14573

original commit: b1b5fe481681aef76c06b8abf1abe4cc267533ec
2009-04-21 15:35:05 +00:00
Sam Tobin-Hochstadt
17c0dbbcd3 Infer on ((lambda
add types for matchable? and match-equality-test

svn: r14570

original commit: 8918328e8a06d4cc7973bd94cb6c436e286d0be1
2009-04-20 22:41:37 +00:00
Sam Tobin-Hochstadt
297a5745a6 Fix polymorphic structure predicates.
svn: r14483

original commit: 929dc1d5b245e03d59eba55989c42c1a3e91954a
2009-04-10 00:07:11 +00:00
Sam Tobin-Hochstadt
88b15b7219 Fix bug with structure keys and polymorphic structs.
Use `match*'
Add test

svn: r14482

original commit: 69a3b7a70f56e01d732491d0fa001fe3c7667868
2009-04-09 23:52:13 +00:00
Sam Tobin-Hochstadt
e5d7c897d4 document quote for more types
svn: r14480

original commit: 2332f2f50ab0da2d6455742ce07e3d1aa3f26b86
2009-04-09 22:27:25 +00:00
Sam Tobin-Hochstadt
b111dc6b98 Fix bug with match dots.
Fix handling of keywords.
Add keywords in call-with-input/output-port.

svn: r14469

original commit: ac7e87936043f80e97057c252b855159349001d6
2009-04-08 20:24:05 +00:00
Sam Tobin-Hochstadt
d946fc3b79 Document typed-scheme/no-check
svn: r14465

original commit: 95988f86a2c60eed0edfd4710b9064ea035efb62
2009-04-08 15:04:03 +00:00
Sam Tobin-Hochstadt
ac03c56716 Fix static struct info
svn: r14433

original commit: d57f1a68a4303e0c52ca9f3e383719c3f9e4591f
2009-04-06 06:18:06 +00:00
Eli Barzilay
b155c5e8f0 Changed @itemize{...} to @itemize[...] (done after comparing the doc
tree and verifying that there are no changes).
(Also fixed a few bugs that were in the code)

svn: r14427

original commit: c0a8a0122200209e38dff1959d79b58f847814db
2009-04-05 17:46:20 +00:00
Sam Tobin-Hochstadt
7b70ced131 Report more information for untyped imported identifiers
svn: r14418

original commit: 2aab5762370806fb648694cbbd6cb1c44ba2fc83
2009-04-03 22:42:29 +00:00
Sam Tobin-Hochstadt
35a67354ca Require that `require/typed' uses the contracted version of typed identifiers.
svn: r14415

original commit: 6d302a93046299af4ccd58f8e8ea3938c258f7ac
2009-04-03 18:42:38 +00:00
Sam Tobin-Hochstadt
8c928ca0bf Fix subtyping, printing, inference for refinement types.
svn: r14403

original commit: 6d07cf912830c478b22ef005bbf267cda3d06f2a
2009-04-02 03:03:44 +00:00
Sam Tobin-Hochstadt
474ead72a9 Add refinement types.
Add `parse-commmand-line'

svn: r14372

original commit: cd4305ca4f395a183450b762b2c7e5be0fe4d7db
2009-03-31 03:33:04 +00:00
Sam Tobin-Hochstadt
5949a60cf7 fix some small bugs
svn: r14352

original commit: ebdd60a3a3cbdc7904f71c93316379caf866afdf
2009-03-30 12:51:02 +00:00
Stevie Strickland
f288f98416 Sam and I did some work to allow automatic inferred linking in
(define-values/)invoke-unit/infer.

svn: r14315

original commit: 99aac7d7455c3ce9189d038f781558b6bd696424
2009-03-27 13:47:12 +00:00
Sam Tobin-Hochstadt
44a858ba4a add `remove-duplicates'
svn: r14278

original commit: f48dbda950dc70be1966a352ded70bd12a339a24
2009-03-25 17:22:09 +00:00
Sam Tobin-Hochstadt
fc897da813 sync ts to trunk
svn: r14257

original commit: fcc2a24545b0b4f71052457acdf8097f084a4b27
2009-03-25 01:07:34 +00:00
Sam Tobin-Hochstadt
23a33e158c Add fake type name -Real
Add `scheme/math' types from Jos Koot.

svn: r14251

original commit: 43443652b8d4c0b73ec950c3ead818c262ddf0bb
2009-03-24 17:49:15 +00:00
Sam Tobin-Hochstadt
8fa0ec6079 First step to polymorphic functions in typed/untyped interface
- poly/c contract from Carl/Stevie
- generate the contracts
- test
- use in typed/srfi/14

svn: r14241

original commit: 60e096913d18554592f4dd6e024d3f58cc94b88e
2009-03-23 18:29:07 +00:00
Sam Tobin-Hochstadt
bb80c7809e Types for `scheme/path', from Harsha.
svn: r14240

original commit: 6108dc873cb9c07a86f64fb20ef6b5f89f3c79ab
2009-03-23 17:25:57 +00:00
Sam Tobin-Hochstadt
31acd517ab Typed wrapper for file/tar
contributed by YC.

svn: r14233

original commit: 746446d4ac5f05a8876859a6a1de26541d654e5c
2009-03-23 15:34:34 +00:00
Sam Tobin-Hochstadt
2e7fb8105f improve types for foldl, foldr
svn: r14228

original commit: bb2268b9be8243a7e928df4e83ef6bc19a68a213
2009-03-23 12:02:46 +00:00
Sam Tobin-Hochstadt
56216d320e Use 'no-free-identifier=? property with rename transformers.
Allow use of ... without bound when only one ... var in scope.

svn: r14214

original commit: 6d8014783b16c2d31624f8bd5f6d25d9fb10b5e2
2009-03-22 12:41:26 +00:00
Sam Tobin-Hochstadt
fdfa1cd04a Allow `apply' of non-uniform polymorphic functions to fixed-length list arguments.
Please backport.

svn: r14162

original commit: 0ed8d251bff94224448a2d860d329a7427513a61
2009-03-17 21:18:50 +00:00
Sam Tobin-Hochstadt
3bcaed5d41 add new section about libraries in ts
svn: r14145

original commit: fee4c1944dca20f41b0dc3217dfaf3295ee89215
2009-03-17 12:43:20 +00:00
Sam Tobin-Hochstadt
63d2f3ecb2 Fix docs for HashTable.
Add string->list, list->string, sort.

svn: r14138

original commit: 6b5b193815bd469a2119e1227503fe446f89e8d2
2009-03-17 02:14:11 +00:00
Sam Tobin-Hochstadt
d8ac05e077 disable application checking, `3' now typechecks
svn: r14128

original commit: 537d267314bbf5e74230460874b9af89a43bfacf
2009-03-16 15:28:29 +00:00
Sam Tobin-Hochstadt
d3e559a233 more work on lambda
svn: r14073

original commit: c4f5fd3773100a15690ef37c1f3f7b331db64d03
2009-03-12 15:27:24 +00:00
Sam Tobin-Hochstadt
feaf570b14 new version of abstract-filters that handles multiple values/arguments properly
strengthen contracts
improve match expanders

svn: r14057

original commit: c51dd1e8b058b99367a7a0fb8df4135f04cfcd4c
2009-03-11 19:11:50 +00:00
Sam Tobin-Hochstadt
61750cad33 tc-lambda-unit now compiles
generalize tc-results to handle drest

svn: r14044

original commit: 058e78ab17c0b749196849660d3d580c08df6c9a
2009-03-11 00:15:13 +00:00
Sam Tobin-Hochstadt
11f325e1c6 Correctly report syntax def from define-struct:
Add alias in type env when rename transformer is used.

svn: r14034

original commit: 79ee9fbee8868a4f5911356d2c1d2a9b0d7fd016
2009-03-10 20:29:02 +00:00
Sam Tobin-Hochstadt
a8d21c7178 new tests for struct providing
svn: r14033

original commit: 2ad93c7da514183caebbe313054625c71c427ef3
2009-03-10 20:27:46 +00:00
Sam Tobin-Hochstadt
2afd5ece54 everything except lambda, app units work
svn: r14008

original commit: 8b7497cccfa8dcc264bf16f90641f2f3f99084b2
2009-03-07 23:19:41 +00:00
Sam Tobin-Hochstadt
fc229e12cb New true-filter and false-filter abbrevs
Fix for Stevie's d-s/c fix.
tc-expr now compiles

svn: r14007

original commit: 18e03efc840e0df5dec1a6333a0d6ba42fc10bb1
2009-03-07 22:51:54 +00:00
Sam Tobin-Hochstadt
ffa5d528a2 try to fix this test
svn: r13999

original commit: d1ac259bcc5fc8cf5c9b6a94910b0c42f585dbf6
2009-03-06 23:37:05 +00:00
Sam Tobin-Hochstadt
ad00361e3a Add provides
Use Type/c instead fo Type? in contracts
New if typechecking.
match expanders for tc-result.

svn: r13996

original commit: 2dbd82e587a87663afacefc5524553c4fc2246ed
2009-03-06 22:25:19 +00:00
Sam Tobin-Hochstadt
b33c622891 fix bugs
add env+

svn: r13994

original commit: aa32d9b928c7edaf68356775659dde96096b4123
2009-03-06 21:27:05 +00:00
Sam Tobin-Hochstadt
89f647fde1 combine-filter
update

svn: r13992

original commit: d293635cb7f2894111ec06339422a24c7fb7ef39
2009-03-06 20:54:39 +00:00
Sam Tobin-Hochstadt
af10c650fa fix typo
svn: r13989

original commit: e2a017f331b09745540bf47873cd9f1539f878ca
2009-03-06 19:51:33 +00:00
Sam Tobin-Hochstadt
c6ccbfc76d 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

original commit: 6c30e2d9e7c9d983f97092ad3aad8268e0560cb5
2009-03-06 19:50:42 +00:00
Sam Tobin-Hochstadt
bc1da3d537 All subtype tests now pass.
svn: r13963

original commit: 511d641b450b788760ca9207b586fe0792a4744e
2009-03-05 00:33:48 +00:00
Sam Tobin-Hochstadt
ee917a791e handle subtyping for varargs functions
svn: r13962

original commit: 147cac076ca959adfb754a778979621a37d5ce73
2009-03-05 00:09:43 +00:00
Sam Tobin-Hochstadt
5f9dbd695a remove contract errors
svn: r13959

original commit: f106e885510ee32b88328abc3f34f762b798ba2f
2009-03-04 20:31:46 +00:00
Sam Tobin-Hochstadt
8650f1ade7 most test suites pass
svn: r13958

original commit: 8498619ab87c1b3f01a68cb8f5614ac982be7e4e
2009-03-04 20:26:34 +00:00
Sam Tobin-Hochstadt
6cafdd4a5d all of private, and tc-structs, now compiles
svn: r13956

original commit: 00721c10c80eae7fe51bea7593c1cab181820716
2009-03-04 19:49:20 +00:00
Sam Tobin-Hochstadt
361712cb27 base-env now compiles
svn: r13954

original commit: e53a851bc21a1759161e0831730cc97c36743e2e
2009-03-04 19:28:48 +00:00
Sam Tobin-Hochstadt
5b48a2df26 more stuff compiles
svn: r13952

original commit: 37aa9746ea98b683b8b4d90193f20d6e51e9a5af
2009-03-04 18:53:37 +00:00
Sam Tobin-Hochstadt
0ff58e7208 env now compiles
svn: r13950

original commit: 78fe918457e1aea1f7d0acfcf9a47d0893b5b453
2009-03-04 18:39:19 +00:00
Sam Tobin-Hochstadt
85369a60d1 infer now compiles
svn: r13949

original commit: 84d13347d7929b6dc71a91701b46d718b4775cb0
2009-03-04 18:33:29 +00:00
Sam Tobin-Hochstadt
8af795574a undo this move
svn: r13947

original commit: 7847d358426bc9b7d22547b33cddf06de89e8336
2009-03-04 16:37:00 +00:00
Sam Tobin-Hochstadt
1716037a42 more movement
svn: r13945

original commit: e8fa7fd4dde516bd336c45c817e65e9682ab2a43
2009-03-04 16:32:50 +00:00
Sam Tobin-Hochstadt
e8aa501462 more stuff works
svn: r13935

original commit: c819793a828c0688d156dee35045848e1b775345
2009-03-04 00:13:54 +00:00
Sam Tobin-Hochstadt
eb77d9debc 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

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

svn: r13931

original commit: f05fcfcf13ccb0e8f57edc86191fdaa6fef4da91
2009-03-03 22:45:57 +00:00
Sam Tobin-Hochstadt
c98a07ebb7 convenience now compiles
svn: r13930

original commit: 44902149cbc6f0ed024e2e761700a6c83f4ab6df
2009-03-03 22:30:08 +00:00
Sam Tobin-Hochstadt
207b5ebab2 More file movement
svn: r13929

original commit: bbfb99bc77cdb16e9178ad45d0d1440f6fc91f92
2009-03-03 22:26:15 +00:00
Sam Tobin-Hochstadt
b52de7d71f union.ss compiles
svn: r13927

original commit: 20628199f58d659b7a62f13b56a4b7e8bb8c2196
2009-03-03 21:55:11 +00:00
Sam Tobin-Hochstadt
5d73d8eae2 fix make-arr
svn: r13926

original commit: 0eda7878d5b7e7b9cbaac8db4794cc5cd94ecfdd
2009-03-03 21:53:26 +00:00
Sam Tobin-Hochstadt
c28b5d1eb7 fix some requires
svn: r13925

original commit: 6271f648c6c3b4b0b7220497f037a2783a5a2ce0
2009-03-03 21:53:02 +00:00
Sam Tobin-Hochstadt
2901393e97 subst-tests now pass
svn: r13923

original commit: 4615d7573e2a3c6313bd35913dc4267db6427723
2009-03-03 20:35:18 +00:00
Sam Tobin-Hochstadt
593d7cf24c Typed wrapper for md5.ss from YC.
svn: r13921

original commit: 089ebfe49203fe8aa55571a773e659eca1a078a4
2009-03-03 20:01:41 +00:00
Sam Tobin-Hochstadt
04a87a60b5 Typed version of SRFI 14, from David Van Horn.
svn: r13905

original commit: 2b0e89ee2ae1359f4088aa1d768c90eea5d61da2
2009-03-03 02:09:33 +00:00
Sam Tobin-Hochstadt
c9d49b659c subtype.ss now compiles
svn: r13901

original commit: eaf15594c084b398e8bbc4449fb698257f088689
2009-03-03 01:24:06 +00:00
Jay McCarthy
ae8f85d501 new units, contracts, tests
svn: r13852

original commit: 196ec00f16f726745f98d6d5b026213114d9a5e6
2009-02-26 17:09:26 +00:00
Eli Barzilay
de3fec3ebc fix bitwise ops
svn: r13850

original commit: d10cdccca9a704f6a215660f667dd7aaaf2c8757
2009-02-26 14:04:39 +00:00
Sam Tobin-Hochstadt
cf6f678b9c move subtype.ss
svn: r13815

original commit: ea86a63e8033ec8e11cee59e4463acc55586a044
2009-02-24 16:23:16 +00:00
Sam Tobin-Hochstadt
1510961e85 more file moving
svn: r13797

original commit: af3449cf56500be4eced680e73f77af51e10b8ab
2009-02-23 03:02:00 +00:00
Sam Tobin-Hochstadt
e6615a0b47 new directory
svn: r13796

original commit: a197c1b9613174d731ce8b1f5d564969cdc2aa98
2009-02-23 02:53:39 +00:00
Sam Tobin-Hochstadt
28fece8d89 finished resolve-type
svn: r13786

original commit: 7020ff07a5e71f9b57bafbf7f912200b4526d948
2009-02-22 00:03:41 +00:00
Sam Tobin-Hochstadt
4b70cd02b8 Remove macro-debugger require.
Use `this-syntax'
More contract renamers
Finish type-abbrev.ss

svn: r13785

original commit: 0343ae06f39e5b7d93a44072e505e354a7666bc1
2009-02-21 23:55:32 +00:00
Sam Tobin-Hochstadt
a32de857eb type-utils.ss now compiles
svn: r13782

original commit: a1fb6962330cc6fbd078a07047394f95742b8102
2009-02-21 20:19:44 +00:00
Sam Tobin-Hochstadt
d87a63bcf1 finished implementing printing
svn: r13779

original commit: b57c78e0a4d97d556e2e94a296c823d7e1ffec36
2009-02-21 18:31:23 +00:00
Sam Tobin-Hochstadt
dc943e2561 rename printer file
svn: r13778

original commit: b14da998bf98008d72e7dba7100f4e0fdd2e31c3
2009-02-21 18:08:11 +00:00
Sam Tobin-Hochstadt
57512b406f checkpoint
svn: r13777

original commit: 85de5f27bfdf2b5d22b0a0f0b3062bbda8ce7618
2009-02-21 18:07:07 +00:00
Sam Tobin-Hochstadt
f14f5a0ebf merge ryan's changes
svn: r13773

original commit: 99f678e1baee83c045c0c215fb3d522773f19980
2009-02-21 17:07:29 +00:00
Sam Tobin-Hochstadt
9f656c3fde printer now compiles
svn: r13772

original commit: 50f513be41da79ce0b12c459387fb3dd81660295
2009-02-21 17:07:19 +00:00
Sam Tobin-Hochstadt
f2d724cf82 Type rep compiles
svn: r13768

original commit: 70e174c0e1fbe917d117e36dd9b7b894497fd115
2009-02-21 15:23:42 +00:00
Sam Tobin-Hochstadt
6a8ae14330 Finished new representation defs and folding.
New definition of `define-requirer' that doesn't use lib requires.
New `defprinter' syntax.

svn: r13755

original commit: 0edfd7f31f8e85b7d0176c28baebeae22e34de00
2009-02-20 23:35:02 +00:00
Sam Tobin-Hochstadt
2cb1ecef74 checkpoint
svn: r13749

original commit: 428e7c471b915a6fbc2b52631a3f848c7faf3553
2009-02-19 21:28:41 +00:00
Sam Tobin-Hochstadt
532ec72bd9 new function representation
svn: r13744

original commit: 72ff13bea9b32631551ace3a24c97064c3d5b802
2009-02-19 17:39:19 +00:00
Sam Tobin-Hochstadt
5f8f1bf4b0 checkpoint again
svn: r13735

original commit: e5e0adb499e0037c125f9662c19952bb872276ae
2009-02-19 01:39:11 +00:00
Sam Tobin-Hochstadt
f2ceefc6a6 fix some strange stxclass strangeness
svn: r13722

original commit: 26fe69d9a775c4f3af7b094c1eddbee97df2650b
2009-02-18 04:31:28 +00:00
Ryan Culpepper
91f75661c4 stxclass: added and- and or-patterns, box and vector patterns
svn: r13721

original commit: 59727cc4bcdb2f4955f3f5206207a8d482736d0a
2009-02-18 04:01:52 +00:00
Sam Tobin-Hochstadt
7b85ea3692 checkpoint again
svn: r13718

original commit: c0861fd39b88e3858c5ef6785938a3dbf8b3377c
2009-02-18 02:58:47 +00:00
Sam Tobin-Hochstadt
4071b960e8 move
svn: r13716

original commit: 7d5581b06f3db4e40fc5ed1db1e02d3cd1f7d075
2009-02-18 01:58:11 +00:00
Sam Tobin-Hochstadt
91244ed599 checkpoint
svn: r13715

original commit: a8a9af73d86e90fc725c59fb244dc32a11311385
2009-02-18 00:28:01 +00:00
Sam Tobin-Hochstadt
2183983a1b Move contract-enabling code to utils/utils
Move `cnt' signature form to utils/utils, controlled by same boolean.
Use `w/c' and `p/c' to enable/disable contracts in dt/de.
Contract for `ret'.

svn: r13699

original commit: 00ff608247134f49ffecae576c90df40dacf7143
2009-02-17 17:30:30 +00:00
Sam Tobin-Hochstadt
801180afdc Fix contract on App.
Fix function construction for rec-lambda/check
Re-enable printing.

svn: r13687

original commit: cc1265fc614c972006eea18ba56e579c03e4abd2
2009-02-17 01:09:23 +00:00
Sam Tobin-Hochstadt
ab20aa8d85 contracts on types and effects
svn: r13685

original commit: 14475467b2c7b84d240b48fb3cc62f4d31a484bf
2009-02-17 00:43:47 +00:00
Sam Tobin-Hochstadt
1c96929eea sync to trunk
svn: r13683

original commit: 347035fae9cf132840acb41fbb2231a54f39687c
2009-02-16 23:23:35 +00:00
Sam Tobin-Hochstadt
3860454c7b Use stxclass for require/opaque-type
svn: r13682

original commit: c7809e5838816fee70e74622390d05c07b809062
2009-02-16 23:06:23 +00:00
Sam Tobin-Hochstadt
d009eb6db2 Use stxclass for `require/typed'.
svn: r13658

original commit: 54d17355c3fbcfdf15aec20c3d17e9a1e802ac06
2009-02-16 14:16:36 +00:00
Sam Tobin-Hochstadt
55f8d3f67e docs for provide:
svn: r13645

original commit: eba3b5d54d297673a7ba9ef2c1f8a036e99a88f0
2009-02-16 02:29:33 +00:00
Sam Tobin-Hochstadt
c7e0ef61e9 Add provide:
svn: r13643

original commit: 3205875736f90161f6773d9e7182f25a9f949cc2
2009-02-16 02:23:50 +00:00
Sam Tobin-Hochstadt
d6efd0acc3 Fix error message when polymorphic inference fails because of expected type.
Add test case.

svn: r13639

original commit: 02efc28dff062b60e0ee5e1c425b438d44ce9c28
2009-02-16 02:12:13 +00:00
Sam Tobin-Hochstadt
5312746af4 revert back to regular parse type
svn: r13619

original commit: 204806a13acc831a2c6954c4b9ef00e3239c2e86
2009-02-15 21:57:30 +00:00
Sam Tobin-Hochstadt
727c5bb0b0 subtype caching
svn: r13615

original commit: ed83737d5f6943687c2148457e582dc707363f34
2009-02-15 21:30:02 +00:00
Sam Tobin-Hochstadt
474f810031 Use stxclass for defintern.
Use stxclass for dt and de, and refactor/simplify.
Don't use the real union for unfolding mu types.
Add some descriptions to syntax classes for type parsing.

svn: r13597

original commit: 345abb820bf34bf7a9e1763a964b23143c07219f
2009-02-15 04:01:30 +00:00
Sam Tobin-Hochstadt
b0da5d65da re-enable printing
svn: r13581

original commit: 7830091d42fc7204957a9947d52ad7999d4abd6b
2009-02-14 20:48:26 +00:00
Sam Tobin-Hochstadt
fe0a947bb0 type keys now work, mostly
svn: r13580

original commit: e198478055f13631ec9ab6154edcf71c6c3f7ef3
2009-02-14 20:27:37 +00:00
Sam Tobin-Hochstadt
7bd2447d44 new branch initial commit
svn: r13578

original commit: e13c4b690d8c257de1e08252b1bb0199cb6a1f63
2009-02-14 16:03:25 +00:00
Ryan Culpepper
26d517cfa8 stxclass:
fixed scoping of attributes (wrt declare)
  added 'attribute' form
  added internal/external literals form

svn: r13574

original commit: 44efc7cb48ab4f231a024b037c80de6528b99b7c
2009-02-14 12:17:14 +00:00
Sam Tobin-Hochstadt
2076decb19 Default types for lambda formals.
svn: r13539

original commit: e61075a4fd7a40c2641f06553aecdfedff48ed23
2009-02-12 23:55:53 +00:00
Sam Tobin-Hochstadt
aafbd385f1 add Text% type, new function
svn: r13536

original commit: 80c8ac3b5f79924faa86bb671fe8e975b2e03f0f
2009-02-12 19:55:02 +00:00
Sam Tobin-Hochstadt
3ac20b4930 test fix
svn: r13456

original commit: 2b5413539433b9a0b2a8d615b74b16cdb49c6d95
2009-02-05 15:05:59 +00:00
Sam Tobin-Hochstadt
e2b8fc48b8 typed/mred
- use (Listof Any) instead of List
 

svn: r13439

original commit: 8416536f441d0bd1f010a75a264e02e096921840
2009-02-04 23:33:24 +00:00
Sam Tobin-Hochstadt
c1a6ffd46e fix expr attribute
svn: r13438

original commit: 9f77daab416df94eab23067bf333d0ee17eaef69
2009-02-04 23:07:09 +00:00
Sam Tobin-Hochstadt
2f4a6079e0 use exact-integer? instead of integer?
use (Listof Any) instead of List

svn: r13437

original commit: 52d711e0bdaddd9f516a63cbc19b7e478fde9c77
2009-02-04 23:06:35 +00:00
Sam Tobin-Hochstadt
bb5298992b take out work on paths, now compiles
svn: r13431

original commit: f867eea8c313ff53bdfa4edd9f4e5af0d89ef657
2009-02-04 20:57:28 +00:00
Sam Tobin-Hochstadt
cfab8a698f commit work to new branch, doesn't work yet
svn: r13427

original commit: 3ab3c8d3685d30c827c600d93a0930eff7e1902d
2009-02-04 20:19:41 +00:00
Sam Tobin-Hochstadt
5570ebc151 Fix handling of inexact integer literals.
svn: r13294

original commit: 2962c0bfa7f13a16406248abf891c574fe08b006
2009-01-27 17:55:10 +00:00
Eli Barzilay
86e0c521fc fix the type of > and indent
svn: r13275

original commit: 4288ba636ec132eb91ede11dd9ab1f24263d01e8
2009-01-24 21:13:15 +00:00
Ryan Culpepper
00daf4391f stxclass: created stxclass collection, with docs
svn: r13255

original commit: eb9fe4847f7eacc7ae69560872e337642a366ea8
2009-01-22 05:50:55 +00:00
Eli Barzilay
9f15554e02 newlines at EOFs
svn: r13105

original commit: d1a0086471bf5e9553a9b056b26286c427831d38
2009-01-14 03:10:47 +00:00
Sam Tobin-Hochstadt
76b262cb20 checkpoint
svn: r12954

original commit: ed48078523c1282d0df9f2133cfca50102f8849b
2008-12-30 19:47:21 +00:00
Matthew Flatt
547102b2b4 fine-tune typechecking index entry
svn: r12920

original commit: ec600c59bb9caa15f10fb68844677e56a4ce86dc
2008-12-21 13:57:46 +00:00
John Clements
d6c37aaf3d ...
svn: r12919

original commit: 424ec50bfb3b755103b0516c4a0e69d40ed67811
2008-12-21 10:00:47 +00:00
Sam Tobin-Hochstadt
1ec87308cf Lots of unit contracts, plus some bug fixing.
svn: r12820

original commit: 57f1dd0c4d41b044f99718b4e9a8158a0ce9ae80
2008-12-12 20:33:21 +00:00
Sam Tobin-Hochstadt
59481295ef Update typed collection to use struct inheritance.
svn: r12747

original commit: da7b6978eefdc1d476361cb56cbf577dbf32c825
2008-12-08 20:48:25 +00:00
Sam Tobin-Hochstadt
53a5f53d15 Make inference work in subtype tests.
Add test for top-arr.

svn: r12746

original commit: 08fa300d14085b678a0d0fd357613649e2e459b9
2008-12-08 18:26:58 +00:00
Sam Tobin-Hochstadt
d24a116dcb Handle top-arr in infer. Add convenience binding for function top.
svn: r12745

original commit: ea0873adb29728625be95474b79ff75dda6521fd
2008-12-08 18:24:33 +00:00
Sam Tobin-Hochstadt
48f5927093 Initialize `infer' for env-lang.
svn: r12740

original commit: 8c4789a627e812698a92e5f01b5e63e2b02ae966
2008-12-08 16:54:13 +00:00
Sam Tobin-Hochstadt
d0a893f9a1 Don't fail early here.
svn: r12729

original commit: 587ca084669594f2d58b8a9152127e78ec364acb
2008-12-08 03:37:24 +00:00
Sam Tobin-Hochstadt
fe7eb33c59 Fix time-apply, add test
svn: r12727

original commit: dd8e878cb442a7b9e6b7204552a3856073b6131d
2008-12-08 03:12:38 +00:00
Sam Tobin-Hochstadt
f168aa06c3 Add `current-continuation-marks'
Add some exns
Test require substructs

svn: r12726

original commit: 238b248ad5304189396008634e8a62780fb8fb7f
2008-12-08 03:10:12 +00:00
Sam Tobin-Hochstadt
df8d714918 Enable require-typed-struct with substructures.
Fixes PR 9053.
Move test to succeed.
Add some new bindings.

svn: r12709

original commit: e6eb482de48b8d82a09a9a18db71a2879a5e620a
2008-12-05 00:25:02 +00:00
Sam Tobin-Hochstadt
54035a23e6 bindings for the rest of scheme/bool
svn: r12548

original commit: e27ae4d4577ee78df53fb6afee0152007112e244
2008-11-20 22:30:29 +00:00
Eli Barzilay
8cfc33caf9 set svn:eol-style
svn: r12520

original commit: 447cea73d08c145385fc75a236cb705c5d2a705f
2008-11-20 00:16:25 +00:00
Sam Tobin-Hochstadt
8c097679ea Typed wrappers for file/gif and almost all of net/*.
svn: r12518

original commit: 7124d1e1a1a4e04f4fb23fb2a2d02a82fd6b5426
2008-11-19 22:51:24 +00:00
Sam Tobin-Hochstadt
ec1e13a286 Refactor require/typed/provide and dt into new private dir.
svn: r12517

original commit: 66b9b932ef7d5b5eec53731ec7f196ba4d6b263f
2008-11-19 22:50:54 +00:00
Sam Tobin-Hochstadt
bf579f30e7 Add scheme/tcp bindings.
svn: r12516

original commit: a4ac14b124cb70127897fcb117d4d9312ab17518
2008-11-19 22:50:10 +00:00
Sam Tobin-Hochstadt
3f501c1a2f Handle (Instance Foo) where Foo is unbound.
Return correct error behavior.

svn: r12410

original commit: 541a47f7fd943f77f82983bd52a837db47b736a8
2008-11-12 15:59:24 +00:00
Sam Tobin-Hochstadt
c9e6071981 Add collection for typed version of collections.
Start with mred and framework.

svn: r12409

original commit: 48c90f1c10857f0a486bacd3d01b71cb1f19ba90
2008-11-12 15:57:45 +00:00
Sam Tobin-Hochstadt
2a450f220f Store contract in Base type representation.
Fix tests, pattern matches.
Contract is *ignored* in equality testing.

svn: r12227

original commit: 477fa5581e1c9923df030e0eea86a62c367f014f
2008-11-03 23:58:29 +00:00
Sam Tobin-Hochstadt
ea2ca9402c Reorganize initial type definitions to use DSL.
Split special type names into base-types-extra.ss
Fix test require.
Base types are now require in main.ss

svn: r12203

original commit: e69f6e126ad851175ea2ca8ce5f8381d238d1a40
2008-10-31 17:12:16 +00:00
Sam Tobin-Hochstadt
6235dc2c8b Split typed scheme docs into guide and reference.
svn: r12202

original commit: 9851b3ab783dd81cbf7989f813563874e79a8b02
2008-10-31 16:52:35 +00:00
Sam Tobin-Hochstadt
76916addfd Fix types of syntax tests.
Test for double instantiation.

svn: r12164

original commit: acfba8a390e9f5638daad8ff8220da4ffc04f004
2008-10-29 02:15:50 +00:00
Sam Tobin-Hochstadt
3e692e993e Less polymorphic type for `syntax->datum'.
svn: r12163

original commit: c4d183fcfc7f405e50a7593485011cbc717be3ef
2008-10-28 22:40:43 +00:00
Sam Tobin-Hochstadt
e9bc755fb5 More specific type for quote-syntax (this hides an infinite loop)
svn: r12162

original commit: b7df781999305482ca8e4afaa7718a4af20adf9d
2008-10-28 22:40:19 +00:00
Sam Tobin-Hochstadt
3919075cb3 Handle multiple instantiation of a single expression.
svn: r12148

original commit: 0c44c5ce409512b2f2fb41b70d6ae9ef9a64259d
2008-10-27 20:06:31 +00:00
Sam Tobin-Hochstadt
3082052ffb Remove stray printf.
svn: r12147

original commit: d60ae208e12a72c0788cb907b6870e3d748351e0
2008-10-27 20:04:41 +00:00
Sam Tobin-Hochstadt
f24c93b475 Add `warn-unreachable'
svn: r12145

original commit: 5db61f199fff5b2a8c0d8595de984184336a5bac
2008-10-27 20:02:34 +00:00
Sam Tobin-Hochstadt
c988220e11 Add type for Procedure.
Fix types to use Integer instead of Number where appropriate.
add type for maybe-print-message.

svn: r12141

original commit: a7b5d4af4b478e4c29e2cc52cd760fe0f6b7a596
2008-10-27 15:16:22 +00:00
Eli Barzilay
e94b7c2f70 TS tests now work, and are not noisy when succeeding
svn: r12119

original commit: 0ccbac0647a6a0dd129d9b7531514cfdca24d58d
2008-10-24 19:50:24 +00:00
Sam Tobin-Hochstadt
fd7442f6ed New test from John, fix tests to work with new code.
svn: r12108

original commit: d93505082f85d471ea62f73ae0c402443d0e15c4
2008-10-23 23:34:00 +00:00
Sam Tobin-Hochstadt
757a6ac532 Document `List'.
svn: r12107

original commit: 101ca7ada7e4003e6964200c7c1559349c8beb5a
2008-10-23 22:56:30 +00:00
Sam Tobin-Hochstadt
ec58da0ff0 Improve printing of effects for functions with simple effects.
Reject contract creation of overloaded types.

svn: r12105

original commit: ae1fd58e2b085dbd605f41b17a8ad360aa2bb830
2008-10-23 21:43:23 +00:00
Sam Tobin-Hochstadt
9971f1730d Static info for require-typed-struct
svn: r12096

original commit: d02748f0fa2794e3eab37db264b6166c587625f9
2008-10-22 21:07:47 +00:00
Sam Tobin-Hochstadt
5308710cd1 Fix tests with even?
Add test for struct syntax info.

svn: r12095

original commit: 24c4d0b3fc067072677cd6037657247a315aaccb
2008-10-22 21:07:31 +00:00
Sam Tobin-Hochstadt
6eb9152bd1 Fix type of odd and even.
svn: r12086

original commit: 0ec881dc60a15b185c0c07ed2c36eaf992a368e9
2008-10-21 20:55:07 +00:00
Eli Barzilay
e07bf6e209 look -- a let!
svn: r12085

original commit: b349b4baa2da4b0d92ea33e3b3dcb21a18eeadee
2008-10-21 19:52:40 +00:00
Sam Tobin-Hochstadt
6db06c53cd New error handling for type parsing errors.
New error type that is both top/bot.
Fix provide handling if identifier is provided twice.
Note that require/typed is really a definition.
Fix require of #%kernel.

svn: r12083

original commit: 3a9928474523b042f83a7a707346daa01ef63899
2008-10-21 18:01:03 +00:00
Sam Tobin-Hochstadt
a8185f5048 Add new test for better error reporting.
svn: r12082

original commit: c6c4a049ee8b658459b5bf6b1564aced1afdd7b8
2008-10-21 17:58:57 +00:00
Sam Tobin-Hochstadt
4bed8042a1 revert this change to fix drscheme.
svn: r12075

original commit: b173fb073efdcf3f5a9acc9188de84de32ee3cf4
2008-10-20 20:04:15 +00:00
Sam Tobin-Hochstadt
dc77ba4148 revert previous change
svn: r12074

original commit: 714e356fb48a1bb78c850a1d2e676645c3ab0e8e
2008-10-20 19:01:52 +00:00
Sam Tobin-Hochstadt
e347aea92c require/typed is really a definition for the purpose of provide.
svn: r12073

original commit: aad41cc46e026059e17dc0737fd140f03835b8f9
2008-10-20 16:55:55 +00:00
Sam Tobin-Hochstadt
693829c961 Document singleton symbol types.
svn: r12072

original commit: 2b4a60ced6c62b02d13d4c0fbb7ffc3ad702a9c0
2008-10-20 14:04:10 +00:00
Eli Barzilay
a418e160c0 a little improvement (see PR9847) but still not working
svn: r12068

original commit: 72198bf8561aa280ed12850e99e16ba92c6677f8
2008-10-20 02:52:23 +00:00
Eli Barzilay
4c5a780062 allow the arrow to appear anywhere (since no inputs is a possible case)
svn: r12039

original commit: 05db2f04af30f21c35e7de2d064ac3a3511a482c
2008-10-14 19:07:27 +00:00