93得票7回答
APL、A、J和K之间的区别是什么?

数组语言领域虽然很有趣,但也极其令人困惑。选择J、K、APL或A是否有原因?这些选项中似乎没有开源的版本 - 是否有开源版本?我很想拓展我的思路,但我仍然感到困惑。

25得票2回答
主流函数式编程语言中是否有通过库来模拟J风格的副词、分叉等功能?

是否曾经尝试使用类似动词、副词、分支等方式来模拟J语言中超级紧凑的暗示性编程风格,并通过主流函数式编程语言的库实现? 如果有的话,结果如何? 如果没有,是有技术问题使其不可能,还是因为不值得这样做? 我特别感兴趣的是像forks这样的结构,它们似乎并不直接对应于函数式编程中的基本概念。

23得票4回答
如何在J中过滤列表?

我目前正在学习引人入胜的J编程语言,但有一件事情我还没能弄清楚,那就是如何筛选列表。 假设我有一个任意的列表3 2 2 7 7 2 9,我想要删除其中的2,但保留其他所有元素,即我的结果应该是3 7 7 9。我该怎么做呢?

22得票4回答
使用J编程语言编写大型项目

披露 这是一个“普遍”的问题,也许没有具体的答案,但它不旨在引发争论。 在开始我的项目之前,我真的需要一些信息。 我必须实现一个特定的项目,该项目将从J提供的数据结构和抽象中受益匪浅。 这是一个大型项目,旨在作为一个大型(软实时)Web应用程序的核心组件运行。 因此,性能非常重要。 我一...

20得票2回答
J/K/APL按照常见的编程范式如何分类?

我刚开始学习J语言,它非常有趣,但我想知道它属于哪种语言范式和分类。例如,你可以说F#是一种强类型的、主要是函数式(它支持面向对象和过程式编程,但被认为是“函数式”的)语言,属于ML家族。然而,对于J语言,我找不到关于如何“传统分类”它的信息,也没有在Stackoverflow上找到任何证实它...

17得票4回答
J语言中的“单子”一词是否与其在Haskell中的使用有关?

(不好意思,我很愚蠢并且不受教育,所以这可能是一个荒谬的问题。) 我刚开始学习J语言,他们使用“单子”和“双子”这些术语来表示一元和二元运算符。为什么要这样做,这与我听过的另一个地方(Haskell)有什么关系?我的猜测是它们是不相关的同音异义词,但我不确定。

14得票5回答
阅读J语言代码的最佳策略

我已经使用J语言几个月了,我发现阅读不熟悉的代码(例如我没有自己编写的代码)是该语言最具挑战性的方面之一,特别是当它是暗示时。经过一段时间,我想出了以下策略: 1)将代码片段复制到Word文档中。 2)从(1)中取出每个运算符并将其放在单独的一行上,以便垂直阅读。 3)将每个运算符替换为...

14得票3回答
typedef A (*AF)() 的意思是什么?

我的主要编程语言j最近开源了。为了改进它,我正在研究用C语言编写的源代码。 但是我已经很久没有读过或写过C语言了,即使当时也不是很擅长。而且这个特定代码库的编写方式是...特别的(许多APL解释器,包括J在内,其源代码是用高级“APL风格”编写的,即使是用低级语言编写的;非常简洁,避免冗余,...

10得票1回答
如何选择性地对数组的多个轴进行求和?

J中选择性地对数组的多个轴求和的首选方法是什么? 例如,假设 a 是以下秩为 3 的数组: ]a =: i. 2 3 4 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 我的目标是定义一个二元...

10得票7回答
如何在APL或J中不使用循环计算元素频率

假设我有两个列表,一个是文本t,一个是字符列表c。我想计算每个字符在文本中出现的次数。 可以使用以下APL代码轻松完成。 +⌿t∘.=c 然而它很慢。它将进行外积,然后对每列求和。这是一个O(nm)算法,其中n和m是t和c的大小。当然,我可以用APL编写一个过程性程序,逐个字符读取t并...