forked from rebolsource/r3
-
Notifications
You must be signed in to change notification settings - Fork 27
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Renaming prep for the elimination of UNWORDs
This is essentially just a renaming so that the "_WORDS" list for objects becomes the "_KEYS" list, and the "_WORDS" list for functions becomes the "_PARAMS" list. The series themselves are called KEYLIST and PARAMLIST respectively. Motivation for this change is that the special kind of word used in object frames doesn't have very much in common with WORD! besides having a symbol number. It's a lot more like a TYPESET!. Similarly for params in functions, though they are slightly more ANY-WORD! like because they store the word subtype to know how to treat the parameter (get words and lit-words for quoting, for example.) In particular, if these words ever leak out to the system they will crash, e.g. the "x" that escapes and makes it into this error: >> foo: func [x [series! any-object!]] [] >> bind? select to-object try [foo 1] 'arg2 == Segmentation fault: 11 The nature of the change is to switch these words to typesets which happen to have an extra symbol. Hence instead of an OPTS_UNWORD the cue that it holds a typeset will be that it is actually a REB_TYPESET. It also goes ahead and commits corrections to when VAL_WORD_SYM was used when VAL_BIND_SYM was intended, the latter being what will eventually be VAL_TYPESET_SYM. It would have been possible to name all the variables "typeset", but as with the unword it's a little different...so key and param likely are better. Static typing in the C++ build will be able to smooth over any confusion about what type the key is.
- Loading branch information
1 parent
500b5ea
commit 6c0aefe
Showing
27 changed files
with
365 additions
and
318 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.