Julia 表达式
阐述
具象类型 Expr <: Any
- 字段 head::Symbol:是一个 Julia 符号,表示了表达式的类型
- 字段 args::Vector{Any}:可以存放其他表达式、符号、字面值
构建
- 通过 Julia 构造函数:Expr(head, args...)
- 通过 Meta.parse(str)
- 通过 Julia 引用 Julia 代码构成的表达式:
- :(...)
- quote ... end
 
相关方法
- 展示:可以用 Meta.show_sexpr查看 S-表达式形式
- 求值:用 eval函数可以按表达式的内容进行运算,还可能带来副作用。
实例
julia>      :(a + b*c + 1)       ==
       Meta.parse("a + b*c + 1") ==
       Expr(:call, :+, :a, Expr(:call, :*, :b, :c), 1)
true