Commit Graph

4038 Commits

Author SHA1 Message Date
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