Commit Graph

107 Commits

Author SHA1 Message Date
Stevie Strickland
1a7629ea3b Pretty sure clist is going the way of the dodo, so I want this to
break for now if we use it.  Also abstracting out the way you say
"Here's a variable with no constraints," though this might not end up
being used anywhere else anyway, so I'll not export it yet from
constraints^..
2008-06-13 09:59:43 -04:00
Sam Tobin-Hochstadt
34315ea7b3 Shortcut funs and remove first arg to cset-meet* 2008-06-13 09:56:21 -04:00
Sam Tobin-Hochstadt
7cecac2579 Use dmap code. 2008-06-13 09:55:03 -04:00
Sam Tobin-Hochstadt
e2c0b4e642 Implement dmap operations.
Remove lots of unneeded requires.
Add in-list-forever and extend to utils.ss
Add optional variable argument to c-meet.
2008-06-12 17:10:31 -04:00
Sam Tobin-Hochstadt
49be490b51 Unitize some more. 2008-06-12 15:43:42 -04:00
Sam Tobin-Hochstadt
bf61e29fac Unitize infer.ss 2008-06-12 15:39:19 -04:00
Sam Tobin-Hochstadt
457339d9a8 Fix case-lambda type printing.
Begin work on handling case-lambda/varargs in ... inference.
Implement hash-union, and use to fix big bugs.
2008-06-11 17:16:40 -04:00
Sam Tobin-Hochstadt
1900cf10f4 Hook up new inference to tc-app.
Fix cset-meet handing of var maps and generated variables.
2008-06-11 14:40:34 -04:00
Sam Tobin-Hochstadt
07760164f0 * Split off cgen/arr into a named function
* Adding coersion for dotted arg types.
   (Still need coersion between dotted<->starred.)
2008-06-11 12:22:33 -04:00
Sam Tobin-Hochstadt
dce8566c89 * Fixed variable promotion/demotion for dotted rest args
* Fixed constraint generation for starred functions with
   different fixed arg lengths
2008-06-11 11:45:25 -04:00
Sam Tobin-Hochstadt
975f26b93d Use new * syntax in prims.
Handle extra tables in infer.
2008-06-10 16:38:14 -04:00
Sam Tobin-Hochstadt
e29d4eb881 Add syntax for ... 2008-06-10 15:41:56 -04:00
Sam Tobin-Hochstadt
606ef69d20 Switch subtype to use infer.ss for unification. 2008-06-10 15:05:13 -04:00
Sam Tobin-Hochstadt
37c2f7f2c9 Move infer-ops to infer 2008-06-10 14:29:05 -04:00
Sam Tobin-Hochstadt
6afcb9aa96 Remove infer.ss 2008-06-10 14:27:49 -04:00
Sam Tobin-Hochstadt
e912818f86 Instantiation appears to work. 2008-06-10 14:10:40 -04:00
Sam Tobin-Hochstadt
5c8c2d3d96 Instantiate w/ dots 2008-06-10 12:29:53 -04:00
Sam Tobin-Hochstadt
a7f81d931d Substituion now works 2008-06-10 12:21:59 -04:00
Sam Tobin-Hochstadt
017f756c77 Fix instantiate and abstract to handle bounds properly.
NEW INVARIANT - only use instantiate w/ names
2008-06-10 11:29:56 -04:00
Sam Tobin-Hochstadt
a7c63840e4 Add new datastructures for dots work. 2008-06-09 17:07:41 -04:00
Sam Tobin-Hochstadt
dc47e25c44 Refer to tech terms correctly.
svn: r10196
2008-06-09 16:08:04 +00:00
Sam Tobin-Hochstadt
1da9a0c4b8 Add namespace ops.
Check if typecheck returned nothing for top-level form.
Improve error message.

svn: r10160
2008-06-05 21:36:45 +00:00
Sam Tobin-Hochstadt
67ccf9ddc0 Improve docs.
svn: r10134
2008-06-04 20:17:02 +00:00
Sam Tobin-Hochstadt
6ec49385a3 add expand and expand-once
svn: r10133
2008-06-04 20:16:51 +00:00
Sam Tobin-Hochstadt
bf8dd8264e Fix quoting.
svn: r10132
2008-06-04 20:16:17 +00:00
Sam Tobin-Hochstadt
9c4ab9014f Add new syntax for inst and ann, add define-struct:
svn: r10131
2008-06-04 20:15:54 +00:00
Sam Tobin-Hochstadt
1c4fab4bfd Add a cert to go with the struct predicate.
svn: r10061
2008-05-30 20:03:54 +00:00
Sam Tobin-Hochstadt
f783e05cd8 Fix provide w/ structs.
svn: r10055
2008-05-30 18:56:49 +00:00
Stevie Strickland
f39d4e33ed Adding foldr.
svn: r10048
2008-05-30 16:20:33 +00:00
Sam Tobin-Hochstadt
a67344ddf2 Reset after reporting errors.
svn: r10047
2008-05-30 16:19:47 +00:00
Sam Tobin-Hochstadt
20a9a3e0b3 Report errors at the repl.
svn: r10044
2008-05-30 16:01:44 +00:00
Sam Tobin-Hochstadt
9777a6d079 Fix : for intdef.
svn: r10013
2008-05-28 22:39:04 +00:00
Stevie Strickland
ddf289e1b4 Add ternary for-each.
svn: r10011
2008-05-28 20:43:01 +00:00
Stevie Strickland
1db5280102 Add assf and findf, and also add foldl at binary functions.
svn: r9982
2008-05-27 18:33:52 +00:00
Matthew Flatt
d1628d6238 fix some phase issues in 'match' implementation
svn: r9963
2008-05-26 19:51:06 +00:00
Stevie Strickland
02f6018788 Adding the type for the last function.
svn: r9929
2008-05-22 16:41:04 +00:00
Sam Tobin-Hochstadt
a973a8cbd5 Don't statically require mred in tests.
svn: r9928
2008-05-22 16:36:06 +00:00
Sam Tobin-Hochstadt
4e5abded3c Don't infinite loop on recursive types.
svn: r9925
2008-05-21 20:12:23 +00:00
Sam Tobin-Hochstadt
ac1027af8b Handle errors in type application.
svn: r9915
2008-05-20 20:47:18 +00:00
Sam Tobin-Hochstadt
1e7cffdcdf Instantiate applications before doing inference.
svn: r9914
2008-05-20 20:46:15 +00:00
Sam Tobin-Hochstadt
5039a81624 Handle checking single lambda against expected CL.
svn: r9913
2008-05-20 20:45:38 +00:00
Sam Tobin-Hochstadt
6d87dbc016 Delay type parsing error.
svn: r9912
2008-05-20 20:43:43 +00:00
Sam Tobin-Hochstadt
b5ee687d05 Remove unneeded packages.
svn: r9911
2008-05-20 20:43:29 +00:00
Sam Tobin-Hochstadt
c3c6131b9e Fix handling of rest arg contracts.
svn: r9910
2008-05-20 20:42:57 +00:00
Sam Tobin-Hochstadt
03d2cb7dd9 Improve more types.
svn: r9705
2008-05-06 22:05:57 +00:00
Sam Tobin-Hochstadt
7198eca987 Print variables.
svn: r9704
2008-05-06 22:05:23 +00:00
Sam Tobin-Hochstadt
e5e669e768 Return a result.
svn: r9703
2008-05-06 22:05:05 +00:00
Sam Tobin-Hochstadt
f466da04d1 Fix promotion/demotion for vector/boxes.
svn: r9702
2008-05-06 22:04:46 +00:00
Sam Tobin-Hochstadt
03eac9472e Input checking for require-typed-struct.
svn: r9701
2008-05-06 20:40:38 +00:00
Stevie Strickland
6ae8e6ab50 A couple more functions I've used in my work.
svn: r9697
2008-05-06 18:57:33 +00:00