# Slot 不能为函数
在 wolfram 中可以定义以 Slot 为 Caller 的函数
#[a + 1]&
但是在 sm 的语法下会产生歧义, 因此无法实现
% 这个写法可以是乘法也可以是调用
% 如果解释为调用, 万一 # 是整数, 整数不能作为 Caller, 于是就会引发一个错误
% 因此默认行为被解释为乘法
#(a + 1)&
% 如果有需求的话可以手动将他们区分开来
#*(a + 1)&
#@(a + 1)&
wolfram 中的 caller 可以是任意的
wolfram 中合法但是 simple math 中非法的例子
1[2]
True[2]
"2"[2]
但 sm 中 caller 必须是 symbol
# 复杂导函数
f'[x]'[y]
Derivative[1][Derivative[1][f][x]][y]
我想不明白要多想不开才会写这样的东西出来
支持这个东西很麻烦而且没有巨大的好处
sm 中的 derivative 是特设模式, 无法扩展
# 多重复合函数
sin^2(x)
sin^-1(x)
f^2[x]
← 运算优先级