anchor.diff:  
   -spec init('erlang.io.IReader':type()) -> no_return().
   init(Reader) ->
  -  State = #{ reader        => Reader
  -           , buffer        => <<>>
  -           , at_line_start => true
  +  State = #{ reader             => Reader
  +           , buffer             => <<>>
  +           , at_line_start      => true
  +           , at_line_start_prev => true
              },
     ?MODULE:loop(State).
   
  
positive.code:   X.
  
  -spec update_at_line_start(binary(), state()) -> state().
  update_at_line_start(Result, State) ->
    State#{at_line_start := 'clojerl.String':ends_with(Result, <<"\n">>)}.
  
  -spec get_chars(integer(), state()) -> {binary() | eof, state()}.
  get_chars(N, #{reader := Reader, buffer := <<>>} = State) ->
  
negative.code: %% writing operations.
  %%------------------------------------------------------------------------------
  
  -type state() :: #{ reader             => 'erlang.io.IReader':type()
                    , buffer             => binary()
                    , at_line_start      => boolean()
                    , at_line_start_prev => boolean()
                    }.
  
  -spec send_command(pid(), any()) -> any().
  