GNU APL编辑函数报错求助:∇func、)edit等命令均运行失败
GNU APL 1.8 函数编辑可行方案
报错原因说明
∇func格式错误:GNU APL中使用∇定义函数时,需要将∇和函数名用空格分隔,连写会触发DEFN ERROR)edit/)editor命令不存在:这两个是Dyalog APL等其他APL实现、或者更高版本GNU APL的功能,1.8版本未内置对应命令,因此返回BAD COMMAND
可行操作方案
方案1:交互式∇定义(适用短函数)
操作步骤:
- 在APL交互终端输入
∇ 函数名,例如要定义名为add的两数求和函数,输入:∇ add - 终端进入函数编辑模式后,行首会自动显示
[行数]前缀,逐行输入函数逻辑即可,示例:
[1] res←arg1 + arg2 [2] res
- 函数内容输入完成后,单独输入一行
∇即可退出编辑模式,函数就可以直接调用。
注意:如果编辑过程中触发DEFN ERROR,优先检查参数命名、运算符使用是否符合GNU APL语法规范
方案2:外部文件编写+载入(适用长函数/批量函数)
操作步骤:
- 用系统任意文本编辑器编写APL函数代码,保存为
.apl后缀的文件,例如my_functions.apl,函数内容需要用∇包裹,示例:
∇ add res←arg1 + arg2 res ∇ ∇ multiply res←arg1 × arg2 res ∇
- 回到GNU APL交互终端,使用
)load命令载入对应文件即可:)load /完整路径/my_functions.apl - 后续修改函数仅需要编辑外部文件,重新执行载入命令即可更新工作区中的函数。
内容的提问来源于stack exchange,提问作者johnnynb
相关产品推荐
相关产品推荐

