从执行控制章节来看,在我看来,函数参数有奇怪的实现,如下面的代码所示:
zs:{`d`P`L`G`D!(system"d"),v[1 2 3],enlist last v:value x}
答案 0 :(得分:3)
它们不是函数参数。函数参数将始终包含在方括号中,如下所示:
{[a;b] .... }
或者如果没有指定,它们将被暗示为x,y,z
{x+y}
调试函数正在做的是在提供的函数x上运行“value”,这会产生有用的信息,如http://code.kx.com/q/ref/metadata/#value
中所述。Given a function, it returns the list
(bytecode;parameters;locals(context;globals);constants[0];...;constants[n];definition)
然后它从中提取第2,第3,第4和最后一个输出,在当前命名空间/目录(系统“d”)之前,最后使用d / P / L / G / D作为键创建输出字典