Julia与Clojure编程语言特性解析
1. Julia语言特性
1.1 方法调用与类型参数
在Julia中,方法调用会根据参数类型进行分派。例如,第一个调用会分派到第一个方法,因为参数类型 (Int64, Float64) 可以传递给参数元组 (Number, Number) 。但在定义第二个方法时,若将其第一个参数定义为 AbstractArray{Number, 1} 是不可行的,因为Julia数组在元素类型上不是协变的。此时可引入类型参数 T ,将方法的第一个参数定义为元素类型为 Number 或其任何子类型的数组。
1.2 元编程
1.2.1 自省功能
Julia拥有众多自省函数,如 supertypes 、 <: 、 typeof 、 isa 、 fieldnames 、 names 和 methods 等。 code_llvm 和 code_native 函数能展示方法的中间和目标汇编语言代码。
1.2.2 表达式对象
Julia允许将未计算的表达式作为对象进行访问和操作,有以下几种创建表达式对象的方式:
超级会员免费看
订阅专栏 解锁全文
81

被折叠的 条评论
为什么被折叠?



