anchor.diff:  start_link(Args) ->
       lasp_process_sup:start_child(Args).
   
  +start_dag_link(ReadFuns, TransFun, WriteFun) ->
  +    %% @todo, register in dag
  +    lasp_process_sup:start_child([ReadFuns, TransFun, WriteFun]).
  +
   %%%===================================================================
   %%% Callbacks
   %%%===================================================================
   
   %% @doc Initialize state.
   init([ReadFuns, Function]) ->
  -    {ok, #state{read_funs=ReadFuns, function=Function}}.
  +    {ok, #state{read_funs=ReadFuns, function=Function}};
  +
  +init([ReadFuns, TransFun, WriteFun]) ->
  +    %% @todo: Add new fields to state
  +    {ok, #state{read_funs=ReadFuns, function={TransFun, WriteFun}}}.
   
   %% @doc Return list of read functions.
   read(#state{read_funs=ReadFuns0}=State) ->
  
positive.code: -endif.
  
  %% API
  -export([start_link/1]).
  
  %% Callbacks
  -export([init/1, read/1, process/2]).
  
negative.code:                         exit({lasp_process, not_found})
                  end
          end.
  
  %% @doc Generate WriteFun.
  gen_write_fun(Id, WriteFun) ->
      fun(Value) ->
          WriteFun(Id, Value)
      end.
  