问题标签 [j]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
81 浏览

optimization - 与最小内存占用的连续项目比较

在 J(使用 J503,而不是 J6 或 7)中,通常当我想查看数组的元素是否小于其前任时,我使用以下命令:

这导致 n-1 项:

在内部,}:创建}.两个数组(一个省略最后一项,另一个省略第一项),最后允许<:比较。总内存使用量将2(n-1)用于 2 个临时数组。

另一种在直觉上效果更好的方法需要更多的内存:

(J6 处理得更好。但我坚持使用 J5)。

对于相同的操作,什么是更精简的选择?

0 投票
4 回答
9445 浏览

performance - 使用 J 编程语言编写大型项目

披露

这是一个“笼统”的问题,也许没有具体的答案,但它并不打算作为一场火焰战。在开始我的项目之前,我真的很想了解一些信息。

我必须实现一个特定的项目,该项目将真正受益于 J 提供的数据结构和抽象。这是一个大型项目,旨在充当大型(软实时)Web 应用程序的中心组件。所以性能非常重要。

我一直试图找到一些关于在大型商业或开源项目中使用 J 的信息,但我无法找到任何信息来作为我继续前进的决定的依据。我有:

  • 搜索 Google 趋势,但收到以下回复:“您的术语 - j 编程语言 - 没有足够的搜索量来显示图表。”
  • 在免费(代码)上搜索,并没有找到使用 J 的单个项目
  • 在 Sourceforge 上搜索,没有找到使用 J 的单个项目
  • 在 Lambda the Ultimate 上搜索,只发现下面的讨论斜着引用了 APL
  • 在 Google 和 Bing 上进行了一般搜索,但没有找到任何使用 J 部署的大型项目的示例

在我的项目中使用 J 会出错吗?它似乎拥有我想要的一切——尤其是在数据结构、抽象和简洁方面。当然,我可以花时间在 F#、C# 或 C++ 中模拟所有这些属性,但 J 已经有了它们,所以......

有人可以告诉我在重要项目中使用 J(或任何晦涩的语言)的一些缺点吗?它的性能不够吗?它没有图书馆吗?还有什么我应该知道的吗?

提前感谢您的回复。

0 投票
2 回答
329 浏览

j - J701和J602的区别

我打算在一个Ubuntu盒子和一个WinXP盒子上安装J环境。http://www.jsoftware.com/stable.htm站点似乎没有详细解释 J701 和 J602 之间的区别。我可以从该网站找到的所有信息:

J701 和 J602 都是稳定版本。J701 引入了重大变化,适用于想要挑战前沿挑战的新老用户。J602 适用于旧用户和那些希望(尤其是在 Windows 中)获得更温和体验的用户。

... 另一个提到 J701 的 GUI 是对早期版本的完全重新设计。

请扩展上述差异,J 程序员。

0 投票
1 回答
162 浏览

j - J 中带 /~ 的真值表

我正在尝试在 J 中生成真值表:

现在我想定义我自己的逻辑异或,我这样做了:

当我直接调用它时,这正如我所期望的那样工作。

但它不会生成真值表:

为什么不?

我想也许问题是它]/~ 0 1本身产生了一个 1 x 2 数组,所以我将 monadic 部分更改为使用 nand ( *:y) 因为它产生 2x2 数组:

但我仍然得到相同的行为:

有人可以帮助我理解我的思维缺陷吗?

0 投票
2 回答
182 浏览

j - J : Iverson 的 `table` 函数来自 _A Personal View of APL_

APL 个人观点的最后(就在参考文献之前),Ken Iverson 给出了以下一系列 J 代码片段:

所有这些都在 J701 中为我工作,除了最后一个,它给了我:

我在IBM 的原始 PDF 中注意到引号看起来更像:

但这是一个语法错误。

是否在 J 站点上将 PDF 转换为 HTML 时出现转录错误,或者 J 的语法是否发生了变化?

0 投票
1 回答
89 浏览

j - 如何在对矩阵上执行标量积?

我有一个M包含对的矩阵(即大小为 2 的数组)。给定一对p,如何获得M'包含 的标量积p和 的每个元素的结果的二维矩阵M

M并被p定义:

我在 J 有一个标量积的实现:

它适用于对:

但不是在完整矩阵上,因为长度不好:

我应该如何处理?这对 J 天才来说可能很容易,但我只是一个可怜的新手。

0 投票
2 回答
133 浏览

j - 任意精度数被裁剪

J 剪辑终端中的大整数(注意输出中的省略号)。

如何防止这种情况?

代码

!333x

输出


1033446543458805915609396553829751655062226004168206282343290246978318859791427656855270019484987792989437595025257047708041835273259765874566592560470466922713372647724385431783663513069412389371163853300198049622987566547659856882180617030376554048981440 ...


0 投票
2 回答
173 浏览

arrays - 如何在 J 的函数中使用两次参数?

我想为学习 J 编写素数函数。到目前为止,我想出了这个:

它工作得很好,除了我应该将数字存储在y变量中。

我如何编写一个可以使用参数的函数?即f 13->1

0 投票
1 回答
81 浏览

math - J 功能不工作

我是 J 的初学者。我第一次尝试编写函数类似于 totient 函数。它需要一个数组,假设是某个数字的 i.num,num。然后计算与数组计数互质的元素数。

如果我像这样手动操作:

有用。结果是 6。

所以我想把它变成一个通用功能。

这失败了,我得到 x 的值错误。我不知道为什么。

0 投票
2 回答
114 浏览

arrays - J Tally的误区(#)

在 J 中,要找到可以使用 # 的元素数对吗?

例如

好的。那么多维数组呢

这里#b 是2。我猜是因为第一个维度的长度为2。即数组的框架。

所以如果我稍微改变一下:

这有 3,因为前导维度的长度为 3,对吗?

但我无法解释这一点:

我通过 b 的元素进行计数。所以我认为每个 2x4 子数组都会被使用,我希望 #\b 给

因为:

所以我的问题是,为什么#\b = 1 2 3?我认为这与动词等级有关,对吗?我正在努力理解这个话题......