2 title: Elixir metaprogramming
8 Most of these magic is defined in [Kernel.SpecialForms](http://devdocs.io/elixir/elixir/kernel.specialforms).
14 __MODULE__ # current module
15 __CALLER__ # caller of the function
18 ### [`__ENV__`](http://devdocs.io/elixir/elixir/kernel.specialforms#__ENV__/0)
22 [:__struct__, :aliases, :context, :context_modules, :export_vars, :file,
23 :function, :functions, :lexical_tracker, :line, :macro_aliases, :macros,
24 :module, :requires, :vars]
28 __CALLER__.module |> Module.definitions_in |> IO.inspect
32 apply(Enum, :reverse, [[1, 2, 3]])