John Benediktsson
b38f96de9b
stack-checker: make recursive-reduce have same signature as reduce.
2013-03-27 18:56:47 -07:00
John Benediktsson
2ef3266406
stack-checker: maybe add a test that tests what the todo said.
2013-03-27 18:44:32 -07:00
John Benediktsson
c6e72c40ae
stack-checker: remove a test that is no longer valid, need to replace it with something.
2013-03-27 18:17:49 -07:00
Doug Coleman
c1a49e69c8
combinators.smart: Implement reduce-outputs using compose, fix some stack effects, add using
2011-11-28 20:55:10 -08:00
Doug Coleman
2b87eaa1b5
generalizations: Refactor stack-checker so that smart combinators can be used with curry and compose.
2011-11-27 20:25:22 -08:00
Joe Groff
f39f97840a
stack-checker: update tests
...
[ bi ] infer now hits the row polymorphism checker before it hits the unknown-macro-input checker because of the effect on keep. Change the test to more directly test that call fails with an unknown input.
2011-10-14 15:35:29 -07:00
Joe Groff
e293966618
stack-checker.row-polymorphism: check stack effects correctly when a one-sided polymorphic declared effect is matched to a shallow subtype, for example, ( x -- ..a ) to ( -- ); fixes #88
2011-09-09 18:13:17 -07:00
Slava Pestov
168dd1f825
FFI rewrite part 7: compile callback bodies with the optimizing compiler
2010-07-28 00:49:26 -04:00
Slava Pestov
572b71238f
stack-checker: calling 'dispatch' with unbalanced branches generated an error message that erroneously talked about 'if'
2010-04-13 05:24:49 -07: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
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
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
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
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
Slava Pestov
580cbe75c6
Make stack-checker throw proper errors for primitives that do not have static stack effects
2010-01-20 16:37:58 +13:00
Slava Pestov
df4fb4a3ee
Removing integers-as-sequences
2010-01-15 07:15:33 +13:00
Slava Pestov
e8892d9cde
stack-checker: fix unit test
2010-01-07 17:40:23 +13:00
Slava Pestov
1d16152057
stack-checker: fix error message printed when do-primitive is inferred
2009-11-19 19:43:41 -06:00
Slava Pestov
473cc7db4a
stack-checker: tighten some screws in error reporting
2009-11-09 00:17:24 -06:00
Slava Pestov
ba31abb301
Fix some test failures
2009-11-06 02:35:43 -06:00
Joe Groff
32450a0575
add missing USING: to stack-checker tests
2009-10-30 20:49:09 -05:00
Daniel Ehrenberg
4aa3e2135a
Unit tests for inference behavior of call( and execute(
2009-07-14 01:23:21 -05:00
Slava Pestov
43a1834e0b
stack-checker: fix case where invalid code could infer
2009-05-23 15:50:35 -05:00
Slava Pestov
65faa3fda3
Fix unit tests and load errors for slip removal
2009-05-10 17:03:41 -05:00
Slava Pestov
1dd3ed519f
Revert part of an earlier ccompiler.tree.checker hange to fix smalltalk.eval regression
2009-04-22 21:03:53 -05:00
Slava Pestov
057f75e9a1
Refactor compiler.tree.builder to fix various regressions
2009-04-21 23:02:00 -05:00
Slava Pestov
05f3f9dcb9
Fixing unit tests for stack effect inference changes
2009-04-20 21:15:19 -05:00
Slava Pestov
8414693142
stack-checker: trust word declarations instead of recursively checking them
2009-04-20 18:44:45 -05:00
Doug Coleman
7a1841f59b
(( -- )) eval -> eval( -- )
2009-04-17 15:49:21 -05:00
Doug Coleman
dba4c0d589
fixing compiler errors in basis
2009-04-17 12:46:04 -05:00
Slava Pestov
8385e9d9f5
Fixing compile errors, test failures and help lint failures
2009-03-23 17:12:41 -05:00
Slava Pestov
8f1240cf96
Forgetting a word doesn't call reset-word anymore, fixing an issue where a word calling a forgotten word wouldn't compile because the 'declared-effect' word prop was not set
2009-03-13 00:40:18 -05:00
Slava Pestov
52fef83061
Fix various unit tests
2009-03-07 15:58:14 -06:00
Slava Pestov
cd53c2bd37
produce and produce-as: don't need third quotation either
2009-02-28 15:31:34 -06:00
Slava Pestov
78ce670101
Merge branch 'for-slava' of git://git.rfc1149.net/factor
2009-02-28 14:42:56 -06:00
Slava Pestov
11117648ea
Fix stack checker regressions
2009-02-26 23:30:48 -06:00
Samuel Tardieu
da2ebe21a6
Fix two overzealous [ ] removal in tests
2009-02-18 03:06:14 +01:00
Samuel Tardieu
087d931c36
Remove the tail argument from do/until/while
2009-02-18 02:41:14 +01:00
Slava Pestov
53758074a2
stack-checker: do constant folding for curry and compose with constant inputs at compile time. Allows macros to expand in more cases, fixing the fry caveat found by Doug
2009-02-06 10:21:55 -06:00
Slava Pestov
1f29e128c1
io.styles refactoring introduced a load error in io.streams.null; fix that, add docs, and remove unused with-null-stream
2009-01-13 19:25:44 -06:00
Slava Pestov
5fdb474c76
Fixing various test failures and updating some more vocabs for >r/r> removal
2008-12-17 22:29:32 -06:00
Slava Pestov
34792a9f23
Remove >r/r>
2008-12-17 19:17:37 -06:00
Slava Pestov
672f9e400e
Better error message
2008-11-17 11:16:32 -06:00
Slava Pestov
c19f2257f4
Fix permission bits
2008-10-02 08:34:49 -05:00
Doug Coleman
05779654ec
new accessors
2008-09-02 01:53:55 -05:00
Slava Pestov
74dccc7fbf
Debugging compiler
2008-08-28 22:28:34 -05:00
Slava Pestov
32b762f5ec
Fixing soundness issues with recursive combinators
2008-08-15 04:09:23 -05:00
Slava Pestov
e1987d4af9
Debugging new optimizer
2008-08-14 23:35:19 -05:00