我知道所有3个都是相关的,我已经看到了用J写的Project Euler中的问题的几个答案,以及一些写的K.我想知道的是,你建议学习哪个,你建议去哪里学习材料?
答案 0 :(得分:8)
<强> APL 强>
由Kenneth Iverson创建,作为原始数组编程语言。使用非ASCII字符集,因为没有保留字。 British APL Association保留了最新的口译员清单(免费和商业)以及下文所述的APL启发语言信息。
<强> A + 强>
由亚瑟惠特尼创建,作为APL的后续行动。源代码在GPL下可用,并且包含XEmacs扩展。从website下载。
<强>Ĵ强>
由Kenneth Iverson和Roger Hui创建,这只需要ASCII字符。用于花钱的来源虽然最近是在GPL下发布的。从website下载。
<强>ķ强>
另一种Arthur Whitney语言,这也使用ASCII字符。它背后的公司已退役该语言,但有开源Kona。
问强>
在K之上构建包含类似SQL的查询/连接功能(表是内置容器),这种语言是在处理大量数据的基础上构建的。可以从website下载非商业许可版本。
至于积极使用的是什么,Q在金融领域相当受欢迎,而J则得到了学术界和业余爱好者的一些支持。这两天是阵列编程的最佳选择。
答案 1 :(得分:2)
考虑到各种语言的性质以及材料的可用性,我将选择J.
当前的J解释器不是开源的,但语言规范是。因此,官方J解释器不再是免费的,一个开源项目可以实现它。
K似乎已经死了,取而代之的是Q.它上面的所有许可证似乎都是专有的,并且解释器似乎更难找到(因为他们试图出售kdb,而不是Q)。我找不到要使用的APL版本。
答案 2 :(得分:2)
查看以下部分的APL faq:我在哪里可以找到机器X的APL?
还有一个wiki,其中包含http://aplwiki.com/Frontpage
的信息答案 3 :(得分:1)
你总是可以尝试A +。免费http://www.aplusdev.org/
这种APL语言演变为J和Q
答案 4 :(得分:1)
答案 5 :(得分:1)
有一个名为NAS2000的免费APL解释器,但我发现它只对概念证明很有用。有时我会得到不正确的结果(我在APL多年前编程,从8K IBM 1130到PC / XT,有时我认为结果是错误的),而有时候它们只是非常慢。在J中最好的情况它运行速度与任何事情一样快。我从未使用过K,我曾试图在J中做过大约100个欧拉问题,而我刚刚开始真正理解等级。 (其中大约10个,我在D中完成,一个在Lisp中支持J中的计算,一个在整数线性编程包中,然后当我发现它不会给我正确的答案时我不会给我正确的答案相信是正确编码的约束。
从本质上讲,J是一种数学语言,它非常适合大多数欧拉问题,所以只需要进行修改,并在需要时搜索jsoftware.com网站,这是最好的事情。可以做。