Commit Graph

8143 Commits (0de6d2005e70caaf303154ed837c94292266e77d)

Author SHA1 Message Date
Joe Groff f24a74f66c Merge branch 'master' into row-polymorphism 2010-03-10 11:48:41 -08:00
Joe Groff 18f3df9d4a more help-lint 2010-03-09 21:02:43 -08:00
Joe Groff b9004a4fff fix up sequences help-lint 2010-03-09 20:29:44 -08:00
Joe Groff 4367b15c4a update help-lint to complain when $quotation effect doesn't match declared effect on corresponding input parameter of stack effect 2010-03-09 19:51:04 -08:00
Joe Groff b9bced9a5e update docs for unbalanced-branches-error 2010-03-09 18:42:10 -08:00
Slava Pestov 7744559a46 compiler.tree.propagation: clean up 2010-03-10 15:15:49 +13:00
Slava Pestov 1bf7db20ed Merge branch 'length' of git://github.com/littledan/Factor 2010-03-10 14:30:23 +13:00
Joe Groff 34b29af245 non-polymorphic input parameter check was too strict: wouldn't allow ( x -- ) for ( x x -- x ), for example 2010-03-09 15:57:00 -08:00
Daniel Ehrenberg 8e227bc874 Propagation tracks length just like any other read-only slot 2010-03-09 15:58:44 -05:00
Joe Groff 84aa47610f mop up errors from test-all 2010-03-09 10:22:14 -08:00
Joe Groff e7968ceffc mop up compiler errors from macosx load-all 2010-03-09 00:56:07 -08:00
Joe Groff bcbc7632c6 fix stack effects in compiler tests 2010-03-08 23:46:20 -08:00
Joe Groff 191ac353fd generalize stack effects so we can bootstrap with the stricter stack effect checking 2010-03-08 23:38:10 -08:00
Joe Groff 3abf1f1ef7 stack-checker.row-polymorphism: modify check-variables to enforce non-polymorphic stack effects 2010-03-08 19:44:01 -08:00
Joe Groff 21aa4632c8 refactor stack-checker.row-polymorphism a little 2010-03-08 19:32:25 -08:00
Joe Groff 0f8d77952b Merge branch 'master' of git://factorcode.org/git/factor into row-polymorphism 2010-03-08 18:14:29 -08:00
Joe Groff 5597ee691f add documentation about stack effect variable syntax and the effect on the stack checker 2010-03-08 17:17:47 -08:00
Joe Groff 8159a19187 combine unbalanced-branches-error and invalid-quotation-input into one error 2010-03-07 22:23:24 -08:00
Joe Groff 9e6f84bc24 declare effect on inputs to infer-if in non-literal case, so we get a better error than "unbalanced drop call/nip call" 2010-03-07 21:37:24 -08:00
Joe Groff 6689113519 unify inner-d-index when unifying branches; close a few other leaks where meta-d could have been popped without updating inner-d-index 2010-03-07 20:44:50 -08:00
Joe Groff 66687d6b21 reuse @ and _ from fry in placeholders for invalid-quotation-input errors rather than making our own redundant placeholder symbols 2010-03-07 20:08:35 -08:00
Joe Groff f353b13bbc add unit test from quotation that fails to infer during bootstrap.compiler 2010-03-07 20:07:30 -08:00
Joe Groff 4cd6ad840d add tests from old row-polymorphism implementation to stack-checker unit tests 2010-03-07 19:13:41 -08:00
Joe Groff 1512ed12f3 further improve error message for invalid quotation inputs using a table display with the actual quotation effects determined so far 2010-03-07 18:40:58 -08:00
Joe Groff ea4545e366 improve error message for invalid quotation inputs by referencing each declared-effect to its other references 2010-03-07 18:27:55 -08:00
Joe Groff 011a39457e clear away some rebar 2010-03-07 18:11:44 -08:00
Joe Groff 6b9a79159d 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 b14d59030f add stack variable unification to M\ declared-effect infer-call* 2010-03-07 17:51:41 -08:00
Joe Groff bbbda64ee7 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 63ad397cc1 tweak recursive call site checking to consider declared-effects equivalent to their wrapped values 2010-03-07 11:55:47 -08:00
Joe Groff 339cc8f04e 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 68dd644233 add unit test to show that polymorphic check breaks inference of inline recursive words 2010-03-06 12:28:09 -08:00
Joe Groff 9571bf6d4b give terminating stack effects a pass in the polymorphic checker 2010-03-05 21:51:38 -08:00
Joe Groff 15e6a7fa5e move error summaries for effect parsing errors to debugger vocab 2010-03-05 21:50:40 -08:00
Joe Groff 26e4bb818a 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 c9162c5e31 fix stack error in stack-checker.row-polymorphism 2010-03-05 14:34:50 -08:00
Joe Groff af57d4dfa9 fix ... in compiler.cfg.linearization 2010-03-05 14:27:58 -08:00
Joe Groff 4892bf1d47 refactor stack-checker slightly to fix circular dependency 2010-03-05 14:27:36 -08:00
Joe Groff ff2a53e1b8 clean up now-inappropriate uses of "..." in generalizations stack effects 2010-03-05 13:58:00 -08:00
Joe Groff a3033e885a make effect variables part of effect syntax, stored out of band in effect tuple 2010-03-05 13:30:10 -08:00
Joe Groff 1b1ccb71a4 make tests pass 2010-03-04 22:43:01 -08:00
Joe Groff 053ba583fc improve error reporting 2010-03-04 21:51:49 -08:00
Joe Groff 31640ea9c6 nested scopes were messing up stack checker state 2010-03-04 20:15:26 -08:00
Joe Groff 23de281186 initial implementation of row-polymorphism check 2010-03-04 19:30:08 -08:00
Erik Charlebois 7d9c73c406 Merge branch 'master' of git://github.com/slavapestov/factor 2010-03-03 00:04:17 -08:00
Erik Charlebois a0ac5a16c3 Update tags.txt files for Windows DDK 2010-03-03 00:03:44 -08:00
Joe Groff 444fa7668c Merge branch 'master' of git://factorcode.org/git/factor 2010-03-02 15:25:06 -08:00
Joe Groff 2e4ebc0182 needlessly rice game.input backends further by using set/get-global everywhere 2010-03-02 15:24:47 -08:00
Doug Coleman b059ade5ed Use TYPED: in a few places in calendar.format to avoid passing durations instead of timestamps 2010-03-02 04:31:17 -06:00
Doug Coleman 55c606f274 Remove year/month/day words because they're dumb and confusing 2010-03-02 04:20:40 -06:00