Commit Graph

19901 Commits (c4f50b982a1fe0635c93aa14c55a5323d6519cda)

Author SHA1 Message Date
Joe Groff c4f50b982a Merge branch 'master' into row-polymorphism 2010-03-10 11:48:41 -08:00
Joe Groff eea1326ee7 fix effect of <tuple-boa> primitive 2010-03-09 22:38:41 -08:00
Joe Groff dd825806da more help-lint 2010-03-09 21:02:43 -08:00
Joe Groff 1ca57e5465 fix up sequences help-lint 2010-03-09 20:29:44 -08:00
Joe Groff baadb40e84 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 3b00a2463a update docs for unbalanced-branches-error 2010-03-09 18:42:10 -08:00
Slava Pestov 0c94d75efe compiler.tree.propagation: clean up 2010-03-10 15:15:49 +13:00
Slava Pestov 1acc4ff48b Merge branch 'length' of git://github.com/littledan/Factor 2010-03-10 14:30:23 +13:00
Joe Groff e03ce4b5e1 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
Joe Groff eb7f737ca2 effects: docs for <effect>, <terminated-effect>, <variable-effect> 2010-03-09 13:50:58 -08:00
Daniel Ehrenberg bff3da2833 Propagation tracks length just like any other read-only slot 2010-03-09 15:58:44 -05:00
Joe Groff 242bf2d98d mop up errors from test-all 2010-03-09 10:22:14 -08:00
Joe Groff 906a86ae2d mop up compiler errors from macosx load-all 2010-03-09 00:56:07 -08:00
Joe Groff 13cf49c45c fix stack effects in compiler tests 2010-03-08 23:46:20 -08:00
Joe Groff d4a0a69eb1 generalize stack effects so we can bootstrap with the stricter stack effect checking 2010-03-08 23:38:10 -08:00
Joe Groff 541c347257 stack-checker.row-polymorphism: modify check-variables to enforce non-polymorphic stack effects 2010-03-08 19:44:01 -08:00
Joe Groff 5c08a11016 refactor stack-checker.row-polymorphism a little 2010-03-08 19:32:25 -08:00
Joe Groff 4ce3b99c64 add polymorphic effects for lexer:each-token, map-tokens 2010-03-08 18:55:46 -08:00
Joe Groff 8f0f2bc1de add polymorphic stack effects to continuations:recover, attempt-all 2010-03-08 18:36:40 -08:00
Joe Groff ade937d46f Merge branch 'master' of git://factorcode.org/git/factor into row-polymorphism 2010-03-08 18:14:29 -08:00
Joe Groff d969bc22e3 add documentation about stack effect variable syntax and the effect on the stack checker 2010-03-08 17:17:47 -08:00
Samuel Tardieu 9bc99e2615 Use a subclassed tuple with methods instead of quotations 2010-03-08 20:29:24 +01:00
Samuel Tardieu 02b946b0a1 Project Euler : problem 265 2010-03-08 18:35:30 +01:00
Doug Coleman 6a6ab7c1a8 Fix typedef typo in opencl 2010-03-08 03:39:29 -06:00
Joe Groff 1b3a92441a combine unbalanced-branches-error and invalid-quotation-input into one error 2010-03-07 22:23:24 -08:00
Joe Groff a3a8d61ba3 sequences: effects of push-if and push-either were too strict 2010-03-07 21:56:40 -08:00
Joe Groff 51de9cbb4a 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 ce0e5d030c 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 e761828d47 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 c1555cc653 add unit test from quotation that fails to infer during bootstrap.compiler 2010-03-07 20:07:30 -08:00
Joe Groff 352ed41e74 add tests from old row-polymorphism implementation to stack-checker unit tests 2010-03-07 19:13:41 -08:00
Joe Groff ac90071cd7 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 f5b0f55ec3 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 8751e464ef clear away some rebar 2010-03-07 18:11:44 -08:00
Joe Groff 8dbe938ae0 polymorphize splitting private combinators 2010-03-07 18:07:59 -08:00
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 048aba0b1c tweak recursive call site checking to consider declared-effects equivalent to their wrapped values 2010-03-07 11:55:47 -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 6e712139a4 Merge branch 'master' of git://factorcode.org/git/factor 2010-03-06 14:01:53 -08:00
Joe Groff f92a2d635f tag opencl.* untested 2010-03-06 14:01:26 -08:00
Joe Groff 7b97b84156 add unit test to show that polymorphic check breaks inference of inline recursive words 2010-03-06 12:28:09 -08:00
Samuel Tardieu fdffdd82dd Use a better heuristic 2010-03-06 14:37:35 +01:00
Samuel Tardieu ca93f91eda Remove useless USING: 2010-03-06 14:31:46 +01:00
Samuel Tardieu 05a8df6baf Use distance from math.vectors 2010-03-06 14:14:54 +01:00
Samuel Tardieu af10867b8d A* algorithm implementation 2010-03-06 13:48:54 +01:00
Joe Groff 007128ca7e generalize stack effect of while, until, and produce 2010-03-05 23:01:22 -08:00
Erik Charlebois 819857623d Get the OpenCL driver name right on Linux, confirm test passes 2010-03-05 22:37:10 -08:00
Joe Groff ca944518f7 give terminating stack effects a pass in the polymorphic checker 2010-03-05 21:51:38 -08:00