我在 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/