anchor.diff:    Asts  = lists:reverse(maps:get(asts, State)),
     {Asts, Env}.
   
  +%%------------------------------------------------------------------------------
  +%% Internal functions
  +%%------------------------------------------------------------------------------
  +
   -spec initial_state() -> state().
   initial_state() ->
     #{ asts                => []
      , lexical_renames     => clj_scope:new()
      , force_remote_invoke => false
      }.
  -
  -%%------------------------------------------------------------------------------
  -%% Internal functions
  -%%------------------------------------------------------------------------------
   
   -spec ast(expr(), state()) -> state().
   ast(#{op := constant, form := Form, env := Env}, State) when is_binary(Form) ->
  
positive.code: 
  %% ----- Functions -------
  
  -spec function_form(atom(), [term()], [ast()], ast()) ->
    {ast(), ast()}.
  function_form(Name, Ann, Args, Body) when is_atom(Name) ->
  
negative.code:                   , force_remote_invoke => boolean()
                    }.
  
  %% @doc Emits Core Erlang from the expression found in `Env'.
  -spec emit(clj_env:env()) -> {[ast()], clj_env:env()}.
  emit(Env0) ->
    {Expr, Env} = clj_env:pop_expr(Env0),
  