Björn Lindqvist
4d47b826bf
parser: added helper word use-first-word? to simplify no-word
2015-06-09 13:02:03 +02:00
Doug Coleman
6e60c811ac
core: Rename create to create-word, create-in to create-word-in.
2015-06-08 12:47:35 -07:00
John Benediktsson
b366a06c41
use reject instead of [ ... not ] filter.
2015-05-12 18:50:34 -07:00
Doug Coleman
401b57c6b9
Revert "parser: Print "Loading" message as a comment for homoiconicity. See #1221."
...
This reverts commit 10cf6e3dd2
.
2014-11-23 22:41:15 -08:00
Doug Coleman
10cf6e3dd2
parser: Print "Loading" message as a comment for homoiconicity. See #1221 .
2014-11-23 16:56:49 -08:00
Doug Coleman
c71c200063
parser: Fix for empty word list. Oops.
2014-10-27 19:38:32 -07:00
Doug Coleman
ce3d31014c
parser: Cleaner fix, comments. Fixes #1174 .
2014-10-27 12:12:55 -07:00
Doug Coleman
b83fe1db51
parser: Consider private words now for autocompletes, but to avoid pulling in private words unexpectedly, throw a restart that confirms you really want the private word. Fixes #1174 .
2014-10-27 12:01:37 -07:00
John Benediktsson
a38524eb99
lexer/parser: rename (scan-token) to ?scan-token, (scan-datum) to ?scan-datum.
2014-05-20 09:13:58 -07:00
John Benediktsson
2b7d53b7d1
parser: add invalid-word-name, use it to check for redefining quotes.
2013-04-25 15:41:20 -07:00
Doug Coleman
2d9a15c7c1
lexer, parser: Rename unexpected-eof.
2013-03-23 21:35:50 -07:00
Doug Coleman
5fab749dcc
words: Change word -> last-word, set-word -> set-last-word.
2013-03-23 16:12:03 -07:00
John Benediktsson
bc18b2cd29
compiler.units: more use of hash-sets.
2013-03-10 18:04:37 -07:00
John Benediktsson
7f3f90eb8d
compiler: more use of hash-sets.
2013-03-10 16:13:31 -07:00
John Benediktsson
5487480126
core: cleanup USING lists.
2013-03-05 10:34:47 -08:00
John Benediktsson
c1269bc8a3
parser: make sure lines is an array.
2012-07-27 19:06:22 -07:00
Joe Groff
0b45465722
parser: remove parse-base dead code
2011-11-23 22:33:31 -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
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
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
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
Joe Groff
c3f8f5067e
catch merge conflicts in source and report them as such
2010-04-06 13:34:26 -07: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
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
ed37ed6b70
parser: make 'CONSTANT: foo<newline>3' work in the listener
2010-01-15 08:30:26 +13:00
Doug Coleman
7ce4b746e5
parsed -> suffix!, add append!
2009-10-28 13:38:27 -05:00
Joe Groff
ce807b0fbb
factor "parse-word" out of "scan-word"
2009-10-16 12:26:31 -05:00
Slava Pestov
3c55e7fe0c
Add NAN: literal syntax for NANs with a payload
2009-09-12 15:06:15 -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
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
274655e77c
More work on auto-use
2009-05-16 04:26:45 -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
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
e811dd6192
Reverse compiler.errors => tools.errrs dependency to reduce deploy image size
2009-04-18 03:21:31 -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
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
e0d48e3ab6
New utility word: complete-effect
2009-03-22 17:59:40 -05:00