【问题标题】:How to change a namespace in a single query?如何在单个查询中更改命名空间?
【发布时间】:2021-09-12 09:15:05
【问题描述】:

如果我尝试就地切换命名空间(例如通过 qcon)以在命名空间中精确定义函数(我想 get[`f][3;0] 将准确给出定义它的命名空间),我得到了 empy 结果 - 似乎没有发生命名空间切换:

\d .
system"d .ns1"; f1:{x+y}; get[.ns1.f1][3;0]~`

但是:

\d .
system"d .ns1"; // notice the only difference is the newline
f1:{x+y}; get[.ns1.f1][3;0]~`ns1

是3.6 32bit版本的bug吗?还是一个功能? 如果是特性,那么如何在单个qcon 查询中切换到新的命名空间?

【问题讨论】:

    标签: kdb


    【解决方案1】:

    在执行代码行之前,在上下文中评估代码行。因此,第一个示例中 f1 的定义是在名称空间切换发生之前在上下文中评估的。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-21
      • 1970-01-01
      • 2011-12-24
      • 2019-03-28
      • 1970-01-01
      • 1970-01-01
      • 2010-12-04
      • 1970-01-01
      相关资源
      最近更新 更多