次のように、すべての変数を任意の式の中に入れようとしています(そのため、明示的に範囲を指定することはできません)。
Names default to here(1);
some_f = function({x},
{c},
c=1;
return(x);
);
some_expr = Expr(
a=1;
//b = some_f(1);
);
//trying to get all the variables inside some_expr
Eval(Substitute(
Expr(
local here(
DV_EXPR;
associative array(namespace("here") << Get Contents);
)
),
Expr(DV_EXPR), nameexpr(some_expr)
));
その関数呼び出しが式の中でコメント解除されるまで、これはうまく機能します。
それから私はこのような問題に出くわします。
b = 2;
y = Local Here(
a = 1;
c = a + b;
c;
);
誰もがこれを行うためのより良い方法を考えることができますか?それとも私の地元の人が自分の外の名前を自分の外の名前を自分の名前をローカルのhere名前空間に入れなくても見ることができるようにするための方法?私もlocal()だけを試しました。しかし{DEFAULT LOCAL}が機能する方法のせいで、愛はありません。 UsingNamespace()も試してみましたが、うまくいかないと確信しています。