function - GNU APL 中的大括号

标签 function apl

我在 Linux 2.6.32 上使用 GNU APL 1.1 (svn 4460),我在函数定义方面遇到了一些问题。

此代码段按预期工作:

∇R←ODD N
R←2|N
∇

(ODD L)/L←⍳10

但是当我尝试这个时

{2|⍵} 5

或者这个

ODD←{2|⍵}

我收到语法错误。相同的片段运行良好 here .

我是 APL 的初学者。谁能解释一下导致这个语法错误的原因?

最佳答案

您的第一个示例使用传统的 APL“del”表示法来定义函数。后两个示例使用直接定义(通常称为 dfns - 发音为 dee-funs),它是 Dyalog APL 的扩展,显然不能在您使用的解释器中运行。以这种方式轻松定义函数是一个很大的优势。

关于function - GNU APL 中的大括号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19843300/

相关文章:

r - mutate(across()) 使用外部函数引用当前数据帧中的其他变量而不传递第二个参数

javascript - 用于检查 NaN 和空字符串的 If...else 语句在 JavaScript 中不起作用

python - 我在 python 中的函数正在被调用,即使我只是定义它

python-3.x - 如何编写一个函数,在不使用 return 的情况下更改原始整数列表?

php - 公共(public)函数与 CodeIgniter 中的函数

APL 直接功能评估

apl - 标量和向量之间的区别在 APL 中有什么用处?

vector - 如何在 APL 中交错两个给定向量

recursion - Dyalog APL - 汉诺塔 - 无法正常循环