シンボルを削除するには、次のように記述します。
y=6;
mySymbol = Expr(y);
//Delete Symbols("y");
////Delete Symbols(y); // <- easy
Eval(Eval Expr(Delete Symbols(Expr(Name Expr(mySymbol)))));
Show symbols()
名前空間からシンボルを削除する必要がある場合、シンボルの文字列が必要です。
Names Default To Here( 1 );
nsref = New Namespace(
"ns"
);
ns:x = 20;
mySymbol = Expr( x );
//nsref << Remove("x")
Eval(
Substitute(
Expr(
nsref << Remove( _sym_ )
),
Expr( _sym_ ), Substitute( Expr( Char( __sym__ ) ), Expr( __sym__ ), Name Expr( mySymbol ) )
)
);
s = NameExpr( mySymbol );
str = Char(s) ); // Name not defined
Show( str );
正しい構文は何ですか?
Char(s)
?
ヘッド名(式) ?
Names Default To Here(1);
ms = Expr(x);
Head Name(ms); // "x"