Назначение атрибутов списка в среде

Заголовок - это самодостаточный вопрос. Пример поясняет его: рассмотрим

x=list(a=1, b="name")
f <- function(){
    assign('y[["d"]]', FALSE, parent.frame() )
}
g <- function(y) {f(); print(y)}

g(x)

$a
[1] 1

$b
[1] "name"

, тогда как я хотел бы получить

g(x)

$a
[1] 1

$b
[1] "name"

$d
[1] FALSE

Несколько замечаний. Я знал, что не так в моем исходном примере, но Я использую его, чтобы прояснить свою цель. Я хочу избежать << - и хочу, чтобы x было изменено в родительском фрейме.

Я думаю, что мое понимание окружающей среды примитивно, и любые ссылки приветствуются.

7
задан gappy 16 July 2011 в 04:16
поделиться