J短语的含义:10&+ ~20

Zhe*_* Hu 2 j

我试图这样做20 + 10:

(10&+~) 20
Run Code Online (Sandbox Code Playgroud)

然后我意识到副词&有"短右手".所以它应该是

(10&(+~)) 20
Run Code Online (Sandbox Code Playgroud)

这给了我正确答案:30.但出于好奇心

(10&+~) 20
Run Code Online (Sandbox Code Playgroud)

给出220.为什么?

更奇怪的是,

(10&+~) 0.1
Run Code Online (Sandbox Code Playgroud)

给出"域错误"

Eel*_*vex 7

(10&+~) 2010 (&+~) 20.这看起来像叉子或钩子,但它不是因为~并且&是特殊的雪花.~必须首先处理,所以你的表达是10 (&+)~ 20.现在,&+不能自立,所以~必须在这里反思.你的表达现在是

20 (10 (&+)) 20
Run Code Online (Sandbox Code Playgroud)

现在导致成键的特殊的二元情况下&变成动力(^:) x m&v y ? m&v^:x y.所以,最后,表达式变为:

(10&+)^:20 ] 20
220
Run Code Online (Sandbox Code Playgroud)

显然,你不能使用非整数的幂,所以(10&+~)0.1是一个域错误.