ex文件如何编译

时间:2016-02-06 21:10:21

标签: elixir

当我有一个elixir文件并将编译它时,编译器首先做什么?将ex编译为erlang或直接编译为字节码?
当我将以下代码写入会话交互时

iex(4)> double = fn x -> x * 2 end
#Function<6.54118792/1 in :erl_eval.expr/5>

编译器做什么?将它编译为erlang还是直接编译为字节码?

1 个答案:

答案 0 :(得分:2)

它将代码编译为Erlang AST,然后由OTP的compile module编译为字节码。相关的源代码位于elixir_compiler.erl

compile:noenv_forms([no_auto_import()|Forms], [return, {source, Source}|ErlOpts])