anchor.diff:      gen_udp:send(Socket, Address, Port, ToLog),
       Buffer.
   
  +
  +
   open(Output) ->
       case Output of
           {file, {io_device, File}} ->
  
positive.code:         Mem >= ?MEM_HARDLIMIT -> %% very unlikely...
              close(Output),
              {stop, mem_hardlimit_exceeded, State}
      end.
  %% TODO: check CPU/IO/etc usage
      
  code_change(_OldVsn, State, _Extra) -> {ok, State}.
  
  %% 
  %% Internal functions
  %%
  
  fmt_timestamp(text) ->
      {{Y, M, D}, {H, Mm, S}} = calendar:local_time(),
  
negative.code:             io_lib:format(Text, Data)
      end.
  
  
  do_log(_Output, {at_once, _Fun}, ToLog, Buffer) ->
      [ToLog | Buffer];
  do_log(_Output, delayed, ToLog, Buffer) when length(Buffer) < ?BUFFER_SIZE_N ->
  