Commit Graph

13 Commits (e2ee197e4647c53885f8a5ccf69c9607e225e90d)

Author SHA1 Message Date
Joe Groff e2ee197e46 tweak declared-effect to wrap the existing known instead of introducing a new value, so we don't confuse the compiler 2010-03-07 18:07:42 -08:00
Joe Groff 4a9b65b422 add stack variable unification to M\ declared-effect infer-call* 2010-03-07 17:51:41 -08:00
Joe Groff 42ed9bb11f add a with-effect-here combinator that determines the effect of a scoped subset of the stack checker 2010-03-07 16:54:25 -08:00
Joe Groff a5291e4702 row polymorphism new approach: wrap polymorphic quotation inputs in a "declared-effect" value. M\ declared-effect infer-call* will then assert the effect of declared-effect values during the normal course of stack inference 2010-03-07 11:54:57 -08:00
Joe Groff ca944518f7 give terminating stack effects a pass in the polymorphic checker 2010-03-05 21:51:38 -08:00
Joe Groff 4cc12d3c70 reuse infer-call* for polymorphic inference, which handles curried quotations. tests can pass with real "each" etc. now 2010-03-05 15:20:55 -08:00
Joe Groff dd9c758447 fix stack error in stack-checker.row-polymorphism 2010-03-05 14:34:50 -08:00
Joe Groff 2ca507eb1a refactor stack-checker slightly to fix circular dependency 2010-03-05 14:27:36 -08:00
Joe Groff 8a36d57505 make effect variables part of effect syntax, stored out of band in effect tuple 2010-03-05 13:30:10 -08:00
Joe Groff fb86397021 make tests pass 2010-03-04 22:43:01 -08:00
Joe Groff 7f33e007f9 improve error reporting 2010-03-04 21:51:49 -08:00
Joe Groff 5c0787a1e3 nested scopes were messing up stack checker state 2010-03-04 20:15:26 -08:00
Joe Groff 9eeb0c1b3b initial implementation of row-polymorphism check 2010-03-04 19:30:08 -08:00