Commit Graph

146 Commits (732a8b8dc587323bb9743a1488b608f42105ce1c)

Author SHA1 Message Date
Doug Coleman 1fcf96cada factor: remove """ string syntax for now. there are HEREDOC:, STRING:, escaping \", and something else soon. 2015-07-25 22:59:56 -07:00
John Benediktsson 5eec781b40 use ``if*`` instead of ``dup [ ] [ drop ] if``. 2015-07-20 22:24:30 -07:00
John Benediktsson 507dac7599 locals.parser: don't clone the manifest, just pop used words.
It seems the manifest gets cloned on restarts, which makes unuse-words
not work since it just checks ``eq?``. If we pop the last qualified
vocabs, then everything works.
2015-07-20 17:35:22 -07:00
John Benediktsson a08926653d locals.parser: fix bug where auto-use restarts weren't working properly. 2015-07-19 19:18:47 -07:00
John Benediktsson 242d18d95e locals: use a test tuple instead of a slice. 2015-07-16 15:34:36 -07:00
John Benediktsson 8a3c5c2634 Fix some tests broken by optimized? rename. 2015-07-15 11:47:03 -07:00
John Benediktsson c9561e4f28 locals.parser: fix tests for now so we get clean builds. 2015-07-08 11:27:20 -07:00
Doug Coleman 892c62e1dc factor: second stab at [ ] [ ] unit-test -> { } [ ] unit-test 2015-07-03 09:39:59 -07:00
Doug Coleman 43d6f1d3e2 factor: Retrying on the unit tests. Also normalize some syntax with FUNCTION:. 2015-07-02 17:28:17 -07:00
Doug Coleman 59f3b1ea57 Revert "factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool!"
Needs a bit more work.

This reverts commit 7e54cc2824.
2015-07-02 13:47:06 -07:00
Doug Coleman 7e54cc2824 factor: rename [ ] [ ] unit-test -> { } [ ] unit-test using a refactoring tool! 2015-07-02 11:36:08 -07:00
Doug Coleman 999aa7c897 factor: clean up spaces in -tests files 2015-07-02 10:34:01 -07:00
Doug Coleman 44e8e7b344 primitives: Change PRIMITIVE: to check that the word is in that vocabulary and the stack effect is correct.
Use PRIMITIVE: in core/ and basis/
2015-06-25 18:02:03 -07:00
John Benediktsson 8325837b84 locals.parser: fix help-lint warning. 2015-06-22 18:42:16 -07:00
John Benediktsson e69d0a7b45 locals.parser: only need to clone manifest. 2015-06-22 15:59:15 -07:00
Björn Lindqvist d32b9f9c90 locals.parser: docs for with-lambda-scope and some random doc additions 2015-06-22 11:15:48 +02:00
Björn Lindqvist 976961bfbd locals.parser: new word with-lambda-scope to handle lexical variables
better, fixes #1338

By cloning the relevant parts of the manifest, you ensure that the
quotation with-lambda-scope runs can't "leak" local names in case of
restartable errors.
2015-06-22 11:15:47 +02:00
John Benediktsson 72c95895e7 locals.parser: use qualified-vocabs. 2015-06-09 09:59:19 -07:00
Björn Lindqvist c2290aa141 locals.parser.tests: fixing the tcs so they work 2015-06-09 13:02:03 +02:00
Björn Lindqvist 92868fe778 locals.parser: fix for #1340, write locals directly to the manifest
The locals parser used to parse and store locals in the 'locals'
variable which was an alias to 'manifest get qualified-vocabs>> last
words>>'. For some reason, after a restart they become distinct
objects. An easy fix is to not alias the hash in the first place.
2015-06-09 13:02:03 +02:00
Björn Lindqvist 8ef135bc2f locals.types: stub unit tests 2015-06-09 13:02:03 +02:00
Björn Lindqvist 48138d548a locals.parser: small refactorings and unit tests 2015-06-09 13:02:03 +02:00
John Benediktsson 04a7a793d6 locals.parser: check for valid locals names. 2013-03-20 09:48:55 -07:00
Doug Coleman d33dc194ca core: in-definition -> with-definition. 2012-08-24 16:07:31 -07:00
Doug Coleman b06b6a8261 core: rename in-word-definition to in-definition 2012-08-24 16:04:49 -07:00
Doug Coleman 84402ccf7e core: Don't allow nested defintions in :, ::, M:, M::. Fixes #469. 2012-08-24 15:53:45 -07:00
John Benediktsson 559b5bfa5b using the new H{ } make. 2012-07-19 09:50:09 -07:00
Doug Coleman 42f4dc36b2 namespaces: Rename ``bind`` to ``with-variables``. Update a few places that called ``global [ ] with-variables`` to use ``with-global``. 2012-07-19 00:02:47 -07:00
Doug Coleman f0b6494c76 memoize: implement identity memoize, trim using lists so bootstrap continues to work 2011-11-30 14:41:32 -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
Doug Coleman f9257959fd Rename class to class-of 2011-10-24 06:47:42 -05:00
Doug Coleman f21fee3b73 Rename complete-effect to scan-effect 2011-10-17 10:25:27 -07:00
John Benediktsson 4558bf3414 Change method parsing to validate stack effects. Fixes #236. 2011-10-13 16:41:17 -07:00
Doug Coleman 685fc2f86f Rename method -> lookup-method in three places. 2011-10-04 20:37:23 -07:00
Doug Coleman 8504b17aad Rename spread>quot to deep-spread>quot, and spread>quot-shallow to shallow-spread>quot. 2011-10-02 20:25:39 -07:00
Doug Coleman 76580da5d5 Refactor the lexer/parser to expose friendlier words for scanning tokens. The preferred top-level words now throw an exception on EOF.
CREATE -> scan-new
CREATE-CLASS -> scan-new-class
CREATE-WORD -> scan-new-word
CREATE-GENERIC -> scan-new-generic
scan -> (scan-token)
scan-token now throws on eof
(scan-word) returns word/number/f
scan-word now throws on eof
scan-word-name expects a non-number
Fixes #183.
Fixes #209.
2011-09-29 11:28:28 -07:00
Keita Haga 7703d73230 locals: remove trailing whitespace in docs 2011-02-20 09:16:41 +09:00
Slava Pestov 8a0525e5ce Add a scan-token word which is like scan, except throws an error on EOF; document scan-object word; mention that scan-token/scan-object are preferred over scan/scan-word 2010-07-06 16:20:08 -04:00
Slava Pestov ea726f5680 Move remaining sequence operations from generalizations to sequences.generalizations where they belong 2010-05-18 18:36:47 -04:00
Daniel Ehrenberg aa6158b366 Changing require-when usages to the new syntax for require-when 2010-04-18 14:29:24 -05:00
Slava Pestov 1b271f8202 locals: remove some dead code 2010-03-30 21:56:51 -04:00
Daniel Ehrenberg eb060443db Updating code to use require-when rather than vocab [ require ] when 2010-03-18 01:13:37 -04:00
Daniel Ehrenberg 7364608417 Merge branch 'master' of git://factorcode.org/git/factor into bags 2010-03-02 17:04:45 -05:00
Joe Groff 9bf5c76771 lexer: add "each-token" and "map-tokens", which are equivalent to "parse-token _ each/map" but incremental. update a smattering of parsing words (such as USING:, SYMBOLS:, etc.) to use each-token/map-tokens 2010-02-28 22:19:43 -08:00
Daniel Ehrenberg 434605c0b5 Changing some uses of prune to use members 2010-02-27 13:14:03 -05:00
Slava Pestov df55fed478 generic: rename method-body predicate class to method 2010-02-03 23:11:24 +13:00
Brad Christensen 9b9322ea1e A number of documentation fixes and cleanup. 2010-02-03 00:05:03 -07:00
Joe Groff 6ec4f4ef8b more fussing over locals docs grammar 2010-01-24 10:05:56 -08:00
Joe Groff 7d0c67adf0 remove redundant text from docs for locals docs 2010-01-22 18:40:00 -08:00
Slava Pestov 0612bc6177 Factor source files should not be executable 2009-11-21 17:50:43 -06:00