> Then, how would you explain this: it should be self-explanitory.
> term% fn x @{x=y} > term% whatis x > fn x {x=y} creates to functions x and '@' definition {x=y}. > term% fn 'x @'{x=y} > term% whatis 'x @' > fn 'x @' {x=y} quoting disables any interpretation in rc; this isn't the bourne shell. what the parser sees is the following tokens. FN WORD '{' WORD '=' WORD '}' in this case 'x' for some x should be interpreted differently than for shell input. the *name* of the token is 'x', not its value. (such tokens typically have no value.) it does not matter that the first WORD is defined as 'x @'. - erik