From: <[EMAIL PROTECTED]>
>
> Just when I thought I understood context,
> e.g. each function has one, I read this:
>
I'll share my way of reading this in the hope that it helps.
> >> a: 1
> == 1
The interpreter has been told to create a symbol that refers to "1".
>
> >>block: [a]
> == [a]
The interpreter has been told to create a block with a the word "a" inside
it.
>
> >> use [a] [ a: 2 insert tail block [a] ]
> == []
The interpreter has been told to create a new context and that in the next
block the symbol "a" symbolises something from this new context.
The interpreter has been told that "a" symbolises "2".
The interpreter has been told to insert at the end of the block referred to
by "block" that which is symbolised by "a".
>
> >> block
> == [a a]
>
A block with two symbols - as it happens, symbolising things from different
contexts.
> >> reduce block
> == [1 2]
>
Replacing the symbols in the block for the things they refer to.
Not exactly scientific but helps my brain understand and look for
opportunites.
Brett.