Commit Graph

325 Commits (81c6196dc488d73c9c47e5ccf94e6e8c94e75ad4)

Author SHA1 Message Date
John Benediktsson c1269bc8a3 parser: make sure lines is an array. 2012-07-27 19:06:22 -07:00
Doug Coleman ba64012f79 docs: vm says to read "command-line" but it was called "cli". change the article title in the docs. 2012-07-25 23:49:19 -07:00
Doug Coleman f448405c31 parser: Drunk coding is buzzed coding. 2012-06-21 17:35:24 -07:00
Doug Coleman cab93dea04 parser: last fix. 2012-06-21 14:18:55 -07:00
Felix Kaiser bad2d7e499 parser: fix typo in docs 2012-05-20 00:34:51 +02:00
Doug Coleman 3ba787b277 core/basis: trim down using lists 2011-11-30 23:15:42 -08:00
Joe Groff 2cf8b32bda lexer: skip #! as a single token at front of line
Fixes #370
2011-11-27 14:59:54 -08:00
Joe Groff 0b45465722 parser: remove parse-base dead code 2011-11-23 22:33:31 -08:00
Joe Groff 72de75b881 let's pretend BIN: HEX: OCT: never happened 2011-11-23 19:22:37 -08:00
Doug Coleman cab0369fec classes: Make methods dispatch on maybes. Fix a couple bugs in the implementation of maybe. classoid? is now a dumb test if an object could be a well-formed classoid; valid-classoid? tests for well-formedness. Move maybe tests. Make pprint* work better on methods. 2011-11-22 15:12:20 -08:00
Doug Coleman 067f9830ef classes.union: Define a maybe: word that makes a tuple that acts as an anonymous union for a type and f. Updated all the places we define UNION: ?foo foo POSTPONE: f ;. Fixes #416 and lots of headaches. 2011-11-22 01:56:13 -08:00
Doug Coleman c731dc6edb Rename lookup to lookup-word. 2011-11-06 16:00:00 -08:00
Doug Coleman dc0a921866 Remove the lexer-factory because nothing uses it. Update usages. 2011-10-29 01:11:19 -07:00
Doug Coleman b43c069b81 Change prompt to something we can copy/paste back into the Factor repl. Add auto-use word. Fixes #301. 2011-10-29 01:05:38 -07:00
Doug Coleman 51c033a1f6 Fix all failures in the linux64 build email 2011-10-24 19:33:09 -07:00
John Benediktsson 80e1c8e3f2 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 447466bf45 Clean up a parser docs as per suggestions. 2011-10-02 20:08:23 -07:00
Doug Coleman 671f19d70f 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 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
Doug Coleman 5fce2d0f27 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 e5b6e46702 parser: fix a typo in the docs. 2011-08-26 21:07:16 -07:00
Keita Haga d5fe4fecc1 remove useless whitespace in several documentation 2011-01-05 15:55:34 +09:00
Keita Haga 8f92ca2d47 classes.algebra, grouping, parser: replace 'seqence' with 'sequence' in docs 2011-01-04 21:02:11 +09:00
Slava Pestov cac139297d parser: update unit test 2010-07-08 15:41:28 -04: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
Joe Groff c3f8f5067e catch merge conflicts in source and report them as such 2010-04-06 13:34:26 -07:00
Slava Pestov a566d8cc6b lexer: each-token and map-tokens did not handle EOF properly 2010-03-26 03:42:07 -04:00
Slava Pestov 102a8dc8f8 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 51541bb35b 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 163c26ad72 lexer, parser: show initial parsing word line as part of lexer-errors 2010-02-28 13:01:03 -08:00
Slava Pestov f0aa694c7e 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 db3a23ffe0 parser: auto-use prefers non-private words to private words 2010-02-22 19:25:08 +13:00
Slava Pestov 220dd88a2c Update documentation for new help lint check 2010-02-19 12:31:52 +13:00
Slava Pestov 31ccfa2e5d Fix unit test failures 2010-02-18 04:58:30 +13:00
Brad Christensen 9b9322ea1e A number of documentation fixes and cleanup. 2010-02-03 00:05:03 -07:00
Slava Pestov 3237e48b2d 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 de3168ad71 Various documentation improvements 2010-01-26 01:01:12 +13:00
Slava Pestov ed37ed6b70 parser: make 'CONSTANT: foo<newline>3' work in the listener 2010-01-15 08:30:26 +13:00
Joe Groff ca7f07eed9 actually, no, it doesn't provide warnings for references to forgotten words 2009-11-06 15:25:33 -06:00
Doug Coleman bd13e018dd memq? -> member-eq?, sorted-memq? -> sorted-member-eq? 2009-10-28 15:02:00 -05:00
Doug Coleman 7ce4b746e5 parsed -> suffix!, add append! 2009-10-28 13:38:27 -05:00
Doug Coleman 0d4b9132d7 fix a bunch of typos in docs 2009-10-21 17:40:43 -05:00
Joe Groff 3d95494c1e Merge branch 'master' of http://factorcode.org/git/factor 2009-10-16 12:28:29 -05:00
Joe Groff ce807b0fbb factor "parse-word" out of "scan-word" 2009-10-16 12:26:31 -05:00
Slava Pestov a6598eb33a parser: clarify docs 2009-10-16 12:10:39 -05:00
Keith Lazuka 405e5d015b docs: change $subsection to $subsections 2009-10-02 12:15:48 -04:00
Slava Pestov 3c55e7fe0c Add NAN: literal syntax for NANs with a payload 2009-09-12 15:06:15 -05:00
Brad Christensen f8405e9c55 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 a213db05db parser: remove outdated unit tests that were superseded by tests in vocabs.parser 2009-07-18 11:35:09 -05:00
Slava Pestov aba4fa7371 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 9cc178b738 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 9c239694bf Update unit tests for parser note and lazy list changes 2009-05-16 13:41:11 -05:00
Slava Pestov 306d3c3b32 Docs for parser.notes 2009-05-16 09:56:09 -05:00
Slava Pestov 35ccf0231e 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 90560d3959 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 274655e77c More work on auto-use 2009-05-16 04:26:45 -05:00
Slava Pestov 66a9416473 Update documentation for stricter vocabulary search path semantics 2009-05-16 00:29:21 -05:00
Slava Pestov b31fe9b8f2 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 0c1e519dcb 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 b2c3183b21 Split up tools.vocabs. Note that load-everything is now named load-all 2009-05-04 06:44:17 -05:00
Doug Coleman 471fe2c272 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
Slava Pestov ec72f33fcb Documentation updates 2009-04-20 02:23:52 -05:00
Slava Pestov e811dd6192 Reverse compiler.errors => tools.errrs dependency to reduce deploy image size 2009-04-18 03:21:31 -05:00
Doug Coleman 7a1841f59b (( -- )) eval -> eval( -- ) 2009-04-17 15:49:21 -05:00
Doug Coleman aad6a3d504 fixing compiler error in core 2009-04-17 12:45:57 -05:00
Slava Pestov e52be965f0 Finish moving compiler.errors to basis 2009-04-13 02:50:23 -05:00
Slava Pestov d227fcd33f Move compiler.errors to basis 2009-04-13 02:18:41 -05:00
Slava Pestov c4be8bd65a Refactor error code so that error types are registered; listener prints a summary of errors 2009-04-12 16:08:46 -05:00
Slava Pestov 7adb76aaf4 Factor out some compiler error code into source-files.errors 2009-04-09 04:50:38 -05:00
Slava Pestov 99b8400e56 Documentation updates 2009-04-06 03:00:46 -05:00
Slava Pestov 7741d2ca23 - definitions.icons now has a reference article
- move about to help.vocabs; it now opens the vocab browser instead
- help.vocabs is in default use list
- add runnable-vocab predicate class
2009-03-24 09:11:45 -05:00
Slava Pestov 637d06a4f8 Add silly 'tip of the day' feature, and 'recently visited' list to UI browser home page 2009-03-24 04:11:08 -05:00
Slava Pestov 723bfab030 Fixing unit tests for syntax change 2009-03-23 00:34:02 -05:00
Slava Pestov e0d48e3ab6 New utility word: complete-effect 2009-03-22 17:59:40 -05:00
Slava Pestov c0154c1391 Change (:) to parse effect immediately, and remove ( parsing word 2009-03-21 03:17:35 -05:00
Slava Pestov ea60f8ae93 Changing : foo ; parsing to SYNTAX: foo ; 2009-03-21 01:27:50 -05:00
Slava Pestov be4fb1e7d9 Move call( and execute( to core 2009-03-16 20:11:36 -05:00
Slava Pestov 38c6be94d4 Fixing some stack comments 2009-03-16 06:17:18 -05:00
Slava Pestov 1fab364299 Updating some unit tests 2009-03-16 00:05:43 -05:00
Slava Pestov fdcd8f210a Add 'see' to default vocab search path 2009-03-11 13:57:31 -05:00
Slava Pestov bfb6b4642a Consultations now implement the definition protocol; removing one from a source file forgets consulted methods 2009-03-07 00:42:43 -06:00
Slava Pestov 44815fd981 Better handling of case when user-defined accessor becomes auto-generated 2009-03-06 23:33:03 -06:00
Slava Pestov bf663e830a Changing a method into a generated slot accessor would result in the generated accessor being forgotten 2009-03-06 20:02:31 -06:00
Slava Pestov e4a0396550 Add parse-quotation hook to parser which locals overrides. '[ and [ use this hook. Fixes locals bug reported by erg 2009-03-06 19:48:04 -06:00
Slava Pestov 4a639033fa Merge branch 'master' into new_ui 2009-02-15 21:06:55 -06:00
Slava Pestov 6b99b04531 Add vocab: for vocab-relative paths 2009-02-15 19:53:21 -06:00
Slava Pestov 2d3d722fd0 parser: tweak note printing 2009-02-14 00:45:34 -06:00
Slava Pestov ab386d01aa Merge branch 'master' into new_ui 2009-02-10 16:23:14 -06:00
Slava Pestov 07caee3405 Update some existing code to use initialize 2009-02-10 16:16:12 -06:00
Slava Pestov a0c1d32197 Move io.streams.string from core to basis 2009-02-06 01:58:51 -06:00
Slava Pestov 5cd4f65e59 Fix conflict 2009-01-27 15:49:49 -06:00
Slava Pestov 298fdecf32 Fixing eval unit test, and help lint failures from stricter help lint 2009-01-27 15:38:01 -06:00
Slava Pestov 8b6ae748b9 Merge branch 'master' into new_ui 2009-01-27 06:34:19 -06:00
Slava Pestov 597be972b8 Put help.lint in default use list 2009-01-27 04:11:51 -06:00
Slava Pestov 4de760a338 No smart quotes here 2009-01-27 01:33:38 -06:00
Slava Pestov d8e135a4d3 Merge branch 'master' into new_ui 2009-01-27 00:08:52 -06:00