[REBOL] Re: Generating words and global variable space
From: jelinem1:nationwide at: 22-Mar-2001 8:41
Correct, this is not possible. I've explored this topic in some depth
awhile ago, before the limit was raised. ANY word, whether global, local to
a context, an element to an object, a refinement, etc and irregardless of
value (even undefined words, if they are referenced even once) are put into
/system/words.
I have created a work-around, though it will not work if you are
dynamically generating words. I have written a pre-processor to a REBOL
script which will replace all function locally-declared words and function
parameter words with generic names (which get reused with each context).
The amount of word reduction depends on your coding style, and the tasks
you are doing. For the project I was working on, this helped alot.
- Michael Jelinek
Gisle Dankel <[dankelg8--cs--man--ac--uk]>@rebol.com on 03/22/2001 07:56:19 AM
From: Gisle Dankel <[dankelg8--cs--man--ac--uk]>@rebol.com on 03/22/2001 07:56 AM
Please respond to [rebol-list--rebol--com]
Sent by: [rebol-bounce--rebol--com]
To: "['rebol-list--rebol--com']" <[rebol-list--rebol--com]>
cc:
Subject: [REBOL] Re: Generating words and global variable space
Hi Doug,
I don't think this is the solution.
Let me illustrate the problem:
forever [to-word join 'x counter: counter + 1]
>> counter: 0
== 0
>> forever [to-word join 'x counter: counter + 1]
** Internal Error: No more global variable space
** Where: to-word
** Near: to word! :value
>> use [new-word] []
** Internal Error: No more global variable space
** Near: to word! :value
I need to generate lots of new words without filling up the global
variable space. It seems this is not possible.
Gisle
On Thu, 22 Mar 2001, Vos, Doug wrote: