别名功能有没有一种方法可以真正别名一个函数,而不仅仅是创建它的副本?
Names default to here(1);
f = function({x, y},
print(x);
);
// I'm assuming this just copies it.
alias_f = nameexpr(f);
alias_f(14, 28);回复:别名功能我很确定功能如果同一函数有另一个变量,则(...)函数将被克隆。
根据需要别名的原因,考虑
a = b = Function( {c}, Show( c ) );这是一种在拐角处偷看的方法,可能会发现有一个克隆:
a = b = Function( {c}, Show(asconstant (c) ) );
a(42);//42
b(43);//43
a(44);//42
b(45);//43你想达到什么目的?可以传递命名空间而无需克隆其内容(并且该内容可以是函数定义。)如果函数很大且克隆需要花费大量时间,则使用带有别名的小型包装可能是合适的。如果与ParallelAssign相关,则出于内部原因,它确实需要克隆,类似于asConstant示例。
回复:别名功能有趣。
有关更多背景信息。 由于重构,我试图将新的自定义函数别名为另一个名称。
试图转向
MyNCF:crappy_function_name
至
MyNCF:better_function_name
不破坏旧脚本。
我喜欢包装的想法。
以前没有使用过As Constant。 太酷了。
我认为这对我来说已经足够了。 非常感激。