DocRun 除了支持双向连接双栏编辑,文档拓扑关系图,调用本地 Python/Matlab/R 之类的环境之外,还支持直接运行 Pond
Pond 具备强力表达式引擎,这里以二项式分解为例: 暴力展开
# 多项式暴力展开
clear(x,y)
(x+y)^8 //.{
(a~+b~)^n~:>a*(a+b)^(n-1)+b*(a+b)^(n-1),
a~~*(b~+c~~):>Times(a)*b+Times(a)*Plus(c)
}
使用杨辉三角优化
N=18; c = [1,2,1]; #二项式的系数
Do(c=Join(1,Table(c[i-1]+c[i],{i,c.size(),2,-1}),1),{N-2} )
(x+y)^N/.{(a~+b~)^(n~Number?$>1&):>Plus@@Table(c[i+1]*a^i*b^(n-i), {i,0,n} ) }