Commit Graph

260 Commits (f2741b34a4b82600f7965cfa0f6eae6d4f4ffe24)

Author SHA1 Message Date
John Benediktsson f2741b34a4 Eliminate duplicate syntax for stack effects "(" no longer drops and is identical to the old "((", which is now removed. 2011-10-18 13:19:39 -07:00
Doug Coleman 064d7fd311 Clean up a parser docs as per suggestions. 2011-10-02 20:08:23 -07:00
Doug Coleman 94f3ca3b8c Remove all non-core uses of (scan-token)
Add scan-datum
Add scan-number
Document more words
Fixes #225.
2011-10-02 12:00:08 -07:00
Doug Coleman 300138eb4d 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
Doug Coleman 433dc02702 Make "quiet" true by default. Disable quiet mode for listener, bootstrap, and deploy tool.
Move "quiet" to parser-quiet? in parser.notes. Change a few places where quiet was handle wrong.
2011-09-06 17:58:12 -07:00
John Benediktsson c5243a079b parser: fix a typo in the docs. 2011-08-26 21:07:16 -07:00
Keita Haga b043e48e9e remove useless whitespace in several documentation 2011-01-05 15:55:34 +09:00
Keita Haga c9c1d89bfa classes.algebra, grouping, parser: replace 'seqence' with 'sequence' in docs 2011-01-04 21:02:11 +09:00
Slava Pestov f3ae3b7fc8 parser: update unit test 2010-07-08 15:41:28 -04:00
Slava Pestov e935681743 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
Joe Groff e8dc04746e catch merge conflicts in source and report them as such 2010-04-06 13:34:26 -07:00
Slava Pestov a3413060bb lexer: each-token and map-tokens did not handle EOF properly 2010-03-26 03:42:07 -04:00
Slava Pestov 517da6e538 Merge branch 'lexer-parsing-word-errors' of git://factorcode.org/git/factor into lexer-parsing-word-errors 2010-03-03 17:35:12 +13:00
Joe Groff a282a8dd26 lexer, parser: update docs on "parse-tokens" and add docs for "each-token", "map-tokens" 2010-03-01 11:47:57 -08:00
Joe Groff 5a653d4473 lexer, parser: show initial parsing word line as part of lexer-errors 2010-02-28 13:01:03 -08:00
Slava Pestov 1f89dc505a effects.parser: throw a proper no-word error if effect references an unknown class word 2010-02-23 23:57:13 +13:00
Slava Pestov 31c467cf52 parser: auto-use prefers non-private words to private words 2010-02-22 19:25:08 +13:00
Slava Pestov 74891bc02a Update documentation for new help lint check 2010-02-19 12:31:52 +13:00
Slava Pestov 06fb9aac4f Fix unit test failures 2010-02-18 04:58:30 +13:00
Brad Christensen c37b4f5f61 A number of documentation fixes and cleanup. 2010-02-03 00:05:03 -07:00
Slava Pestov 871eb5fd74 vocabs.parser: The manifest is now a definition observer, and updates itself when compilation units complete. This helps keep listener's search path up to date if vocabularies and words are renamed, defined, and undefined
- This makes forget-vocab more reliable in the listener
- It also fixes the problem of listener sessions where QUALIFIED: was used referring to outdated words if the vocabulary in question was reloaded
2010-01-27 20:49:26 +13:00
Slava Pestov 34f40c3a72 Various documentation improvements 2010-01-26 01:01:12 +13:00
Slava Pestov e5044c38bc parser: make 'CONSTANT: foo<newline>3' work in the listener 2010-01-15 08:30:26 +13:00
Joe Groff c967641f5c actually, no, it doesn't provide warnings for references to forgotten words 2009-11-06 15:25:33 -06:00
Doug Coleman b5fd809209 memq? -> member-eq?, sorted-memq? -> sorted-member-eq? 2009-10-28 15:02:00 -05:00
Doug Coleman a57e990af7 parsed -> suffix!, add append! 2009-10-28 13:38:27 -05:00
Doug Coleman aabaccff5e fix a bunch of typos in docs 2009-10-21 17:40:43 -05:00
Joe Groff 80cb0d1455 Merge branch 'master' of http://factorcode.org/git/factor 2009-10-16 12:28:29 -05:00
Joe Groff c45e969a85 factor "parse-word" out of "scan-word" 2009-10-16 12:26:31 -05:00
Slava Pestov 713eea569e parser: clarify docs 2009-10-16 12:10:39 -05:00
Keith Lazuka 8f79ea91ba docs: change $subsection to $subsections 2009-10-02 12:15:48 -04:00
Slava Pestov 47bc1498f7 Add NAN: literal syntax for NANs with a payload 2009-09-12 15:06:15 -05:00
Brad Christensen 4b3ab95660 A number of documentation fixes.
* Short-circuit combinators now show correct stack effect for quots
 * Groups and Clumps unchecked examples corrected, made runnable in listener
 * Class operations had duplicate link to class-types
 * Protocol slots readability fixed
 * Tuple word property for "tuple-layout" corrected to "layout"
 * cond>quot sentence started in lowercase
 * Method precedence code example missing stack effect for GENERIC:, M: integer explain changed to detail an integer
 * Motivation for default streams readability
 * Default input and output streams duplicate readln link removed from output stream words section
 * Looping combinators do description clarified
 * Make philosophy missing space
 * Linear order protocol duplicate after? link removed
 * Parsing words readability fix
 * Copied note regarding with-compilation-unit from define to define-declared and define-inline
2009-08-10 23:34:25 -07:00
Slava Pestov 206119bba8 parser: remove outdated unit tests that were superseded by tests in vocabs.parser 2009-07-18 11:35:09 -05:00
Slava Pestov c491d05763 Recent vocabs.parser change had a regression: vocabs with no roots (scratchpad) were excluded from default use list. Also move with-interactive-vocabs to listener vocab 2009-06-07 21:59:13 -05:00
Slava Pestov 10f86331b4 If a vocab fails to load, manifest would be left in a weird state (reported by Joe Groff) 2009-05-22 01:59:50 -05:00
Slava Pestov 11fd309874 Update unit tests for parser note and lazy list changes 2009-05-16 13:41:11 -05:00
Slava Pestov 319d0b96dd Docs for parser.notes 2009-05-16 09:56:09 -05:00
Slava Pestov 02d6c7ca17 Factor out parser note code into parser.notes vocabulary, and print a note if a using list contains duplicates 2009-05-16 09:40:17 -05:00
Slava Pestov 836c5e07e7 Better presentation for ambiguous-use-error, fix ui.tools.listener now that 'search' can throw, make USE: and UNUSE: ignore dupes 2009-05-16 09:34:42 -05:00
Slava Pestov 83219eb21c More work on auto-use 2009-05-16 04:26:45 -05:00
Slava Pestov ba04d5af1e Update documentation for stricter vocabulary search path semantics 2009-05-16 00:29:21 -05:00
Slava Pestov 3ebd4594e8 Implement stricter vocab search path semantics, with a new API for vocabs.parser. Add map-find-last to sequences vocab 2009-05-14 22:31:29 -05:00
Slava Pestov b1bcc44dd5 Rename use+ to add-use, move search to vocabs.parser, EXCLUDE: bombs out if word doesn't exist 2009-05-13 22:15:48 -05:00
Slava Pestov a776dffeb6 Split up tools.vocabs. Note that load-everything is now named load-all 2009-05-04 06:44:17 -05:00
Doug Coleman 4cef8ff880 rename lines to stream-lines
rename cnotents to stream-contents
2009-05-01 10:41:27 -05:00
Slava Pestov 5649cc7a0a Compiler warnings are no more 2009-04-23 22:17:25 -05:00
Slava Pestov 3353a777f7 Fixing some unit test failures 2009-04-22 07:05:00 -05:00
Slava Pestov 48e70b65fa Move cross-referencing stuff to tools.crossref since compiler doesn't depend on it anymore, and compute cross-referencing index as needed; reduces image size by ~4Mb 2009-04-22 04:20:38 -05:00
Slava Pestov 05f3f9dcb9 Fixing unit tests for stack effect inference changes 2009-04-20 21:15:19 -05:00