Hello [EMAIL PROTECTED],

After running your script, I tried this:

## test-name: "/*-+"
== "/*-+"
## my-func [test-name "&&/[]{}"]   
Encoded:  =%26%26%2F%5B%5D%7B%7D;

The problem here, is that the block is never evaluated and thus the word 'test-name is 
never resolved to it's value "/*-+".

One solution is:

## my-func reduce [test-name "&&/[]{}"]
Encoded:  %2F*-%2B=%26%26%2F%5B%5D%7B%7D;

But you might also consider changing the line:
    foreach [name value] arg [
to:
    foreach [name value] reduce arg [

which will allways reduce (ie. evaluate) the block.

To gain a deeper understanding of REBOL's evalution rules, try this at a console:
## a: 1 b: 2
== 2
## blk: [a (b)]
== [a (b)]
## probe blk
[a (b)]
== [a (b)]
## probe reduce blk
[1 2]
== [1 2]
## probe compose blk
[a 2]
== [a 2]


Best regards
Thomas Jensen


On 17-Jul-00, [EMAIL PROTECTED] wrote:

> 
> I ofcourse didnt get the whole script, there are missing 3 lines
> at the bottom.
> 
> c1: "test3"
> c2: "test4"
> 
> my-func [c1 c2]
> --
> With kind regards
> 
>    Jan Pedro Tumusok - ZyXEL Communications AS
>    Molleparken 4 - N-0459 Oslo - Norway
>    Phone (+47) 22 80 61 80 - Fax (+47) 22 80 61 81
>    Did you visit www.zyxel.no today ?
> 
> 
> 

Reply via email to