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
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
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
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
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
1b271f8202
locals: remove some dead code
2010-03-30 21:56:51 -04: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
Joe Groff
d284d963fa
:> ( a b c ) syntax to bind multiple variables left-to-right off the stack
2009-10-28 15:40:07 -05:00
Joe Groff
c4e3c15c28
remove [let* ] and change [let ] to only establish a scope, leaving :> as the one true way of binding locals
2009-10-27 14:19:05 -05:00
Joe Groff
8f0321a0b1
remove [wlet ]
2009-10-26 23:17:40 -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
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
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
6b25e99470
Add summary for heaps more vocabs
2009-02-16 21:05:13 -06:00
Slava Pestov
4d080b8785
Fix bug in locals found by littledan: [let inside [let didn't work in top-level forms
2009-01-25 23:04:11 -06:00
Slava Pestov
c5160d76e9
Merge qualified, alias, symbols, constants into core
2008-12-17 18:10:01 -06:00
Slava Pestov
6286f96379
:> now works
2008-12-09 01:04:22 -06:00
Slava Pestov
7771a3e511
:> word work in progress, split up llocals
2008-12-06 04:57:38 -06:00