J-11中的1 17 = 1.978 x 10 -18
;(?11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11){~.;:(,,,{:,{:)';(?11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11){~.;:(,,,{:,{:)'''
J有很多方便的小工具可以完成这些工作。
首先,任何用空格分隔的数字字符串都是一个令牌。这意味着这些数字的一维数组。这就是J的词法分析器的工作方式。顺便说一句,11
如果有人好奇,那就是十七秒。
(,,,{:,{:)'QUINE'''
是J中的一个常见的quine技巧,使得使用尽可能少的标记:{:
意味着Tail,因此它将字符串附加到其自身,然后在末尾添加最后一个字符的两个副本。由于最后一个字符是单引号(J使用Pascal样式的字符串),因此结果为QUINE'QUINE'''
。
;:
是一个分词器,将输入字符串分解为J代码,返回一个框列表。该结果的长度是17。
~.
接受此数组的所有唯一元素。该结果的长度是11。
?
被称为Roll。对于其参数中的每个整数,它将选择一个大于或等于零(小于该数字)的随机正数。因此,这里J将生成17个从0到10(含)的数字。
{
使用随机索引从我们的盒子中唯一令牌列表中选择项目。
;
打开所有这些框并一起运行结果。
以下是一些示例。缩进的行是输入提示,与左侧齐平的行是解释器的输出。
;(?11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11){~.;:(,,,{:,{:)';(?11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11){~.;:(,,,{:,{:)'''
~.~.(?;;:11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11';(?11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11){~.;:(,,,{:,{:)'''(){11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11){(;:;
;(?11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11){~.;:(,,,{:,{:)';(?11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11){~.;:(,,,{:,{:)'''
{';(?11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11){~.;:(,,,{:,{:)''',?{:;:{:';(?11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11){~.;:(,,,{:,{:)'''11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11 11{:{;(;:{:,~.