Commit Graph

59 Commits

Author SHA1 Message Date
Sam Tobin-Hochstadt
2c76766c1c Move a bunch of functions from typed-scheme/utils/utils to unstable.
Add convenience lib for unstable docs.
Add char support to format-{id,symbol}
Add unstable/sequence library.

svn: r16789

original commit: fb29a2498e964c6d7651ca6cc6a19c07ca28760b
2009-11-15 22:15:29 +00:00
Sam Tobin-Hochstadt
382a771d75 Better error message for inference with keywords.
Do inference when loop is unannotated, even when argument are.
Don't infer for ((lambda when vars are annotated.
Make promise contracts work.
Fix types of min, max, port->lines, subbytes,  bytes-length, bytes, bytes-ref

svn: r16397

original commit: a5849fb05af85c586bbd730d220b324018a6673e
2009-10-21 13:30:03 +00:00
Sam Tobin-Hochstadt
9c607d6779 Don't error for branches with wrong number of results where return type is Bot.
Allow case-lambda to be subtype of equiv union type.
Add types for path?, fold-files, assert

svn: r16357

original commit: 6a83901a8bd60ccea014f84238a378749573beb2
2009-10-18 01:10:00 +00:00
Sam Tobin-Hochstadt
bd75ded350 Elimintate printing of complex filters.
Allow parsing of ...* and ...a
Parameter for printing ...* and ...a

svn: r16225

original commit: 96f664354d80ed25ff70e27fd7d6dc7f694c6c7d
2009-10-02 20:41:56 +00:00
Sam Tobin-Hochstadt
cc3c031d80 Fix bug with use of match with ... and annotation.
svn: r16216

original commit: 6efd0abc13711b0ca3f75b7c6460291ffb77b8d9
2009-10-02 16:20:30 +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
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
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
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
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
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
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
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
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
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
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
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
9f7ae2f23f match based on symbol for : in ->
svn: r14758

original commit: fbae33b1c3d49eca4a8f7d08bcd88f13d10eb4b1
2009-05-08 23:31:33 +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
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
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
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
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
7b651a3856 more printer improvements
svn: r14633

original commit: dfbfc371e25badd5bae47a0f099466e19fe2010a
2009-04-27 22:24:47 +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
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
fc897da813 sync ts to trunk
svn: r14257

original commit: fcc2a24545b0b4f71052457acdf8097f084a4b27
2009-03-25 01:07:34 +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
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
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
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
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
ee917a791e handle subtyping for varargs functions
svn: r13962

original commit: 147cac076ca959adfb754a778979621a37d5ce73
2009-03-05 00:09:43 +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
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