anchor.diff:                  def_lst   = DefLst,
                   reply_lst = ReplyLst } = ShellState,
   
  -  {_, _, E} = D1,
  +  {assign, _, _, E} = D1,
  +
  +  % TODO: catch error
  +  {ok, C} = cuneiform_lang:create_closure( DefLst++[D1], E ),
   
     ShellState1 = 
  -    case cuneiform_type:type( cuneiform_parse:create_closure( DefLst++[D1], E ) ) of
  +    case cuneiform_type:type( C ) of
   
         {ok, T} ->
   
  
positive.code:                 query_lst = [Q1|QLst],
                  reply_lst = ReplyLst } = ShellState,
  
    E = cuneiform_parse:create_closure( DefLst, Q1 ),
  
    ShellState1 = 
      case cuneiform_type:type( E ) of
  
        {ok, _} ->
  
          ReplyLst1 = ReplyLst++[{query, E}],
  
          ShellState#shell_state{ query_lst = QLst,
                                  reply_lst = ReplyLst1 };
  
negative.code:         case cuneiform_scan:string( StringBuf, Line ) of
  
            {ok, TLst, Line1} ->
  
              % TODO: augment token information with source file name
  
              TokenBuf1 = TokenBuf++TLst,
              
  