有点明白了,是为了区分是函数参数还是闭包里的状态变量。
6啊,可以写一个包啊你们,MMA.jl,帮助你们转移MMA历史代码(逃
[1 2 3]相当于 [1 2 3;],是一个二维数组
1 个赞
3.e Julia里把Vector
,1×3 Array{T,2}
, 3×1 Array{T,2}
以及它们经过 transpose
之后的type分的很清楚,这源自一个非常经典的issue 4774 Taking vector transposes seriously, 有着400+ comments,jiahao在YouTube上有一个talk是总结这个issue的。
如果没时间看的话,可以简单的理解为:有些概念在数学上本质是一个东西,但是到代码里抽象出来可能会有各种各样的问题,尤其像Julia这种强调类型的语言。 “Taking vector transposes seriously”把前面两者之前的差异显式地理清了。
5 个赞
这个点确实很难理解
匿名函数为什么不支持变量名也可以匿名?E.g. #->#^2
Have a look at GitHub - c42f/Underscores.jl: Underscore placeholders for convenient closure syntax
MMA对处理解析数学表达式的能力还是没有其他语言可以比的,模式匹配和模式替换太强大了。还有MapAt这种超级方便操作一堆tensor的功能
1 个赞