Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在我使用过的大多数编程语言中,例如 C/C++、python,函数可以访问外部范围内的变量,但正如我在 DolphinDB 脚本中尝试过的那样,情况并非如此。
以下代码不起作用并报告错误消息:Variable 'foo' isn't initialized yet.
Variable 'foo' isn't initialized yet.
foo = 1 def func() { foo = foo + 1 } func()
我想知道为什么它是这样设计的。
DolphinDB 支持函数式编程,包括纯函数特性。纯函数没有副作用,即只有函数的输入参数会影响函数的输出。
纯函数具有清晰的输入/输出,从而提高了软件质量。纯函数使代码可读。给定输入参数,纯函数具有稳定的输出,这使得测试更容易。DolphinDB 是一个建立在 RPC 之上的分布式系统。如果函数依赖于外部范围内的变量,则不能在远程节点中执行。