anchor.diff:        Time :: integer(),
         Value :: term().
   tc(F, A) ->
  -    Before = os:timestamp(),
  +    T1 = erlang:monotonic_time(),
       Val = apply(F, A),
  -    After = os:timestamp(),
  -    {now_diff(After, Before), Val}.
  +    T2 = erlang:monotonic_time(),
  +    Time = erlang:convert_time_unit(T2 - T1, native, micro_seconds),
  +    {Time, Val}.
   
   %%
   %% Measure the execution time (in microseconds) for an MFA.
  
positive.code:       Time :: integer(),
        Value :: term().
  tc(M, F, A) ->
      Before = os:timestamp(),
      Val = apply(M, F, A),
      After = os:timestamp(),
      {now_diff(After, Before), Val}.
  
  %%
  %% Calculate the time difference (in microseconds) of two
  
negative.code:       Time :: integer(),
        Value :: term().
  tc(F) ->
      T1 = erlang:monotonic_time(),
      Val = F(),
      T2 = erlang:monotonic_time(),
      Time = erlang:convert_time_unit(T2 - T1, native, micro_seconds),
      {Time, Val}.
  
  %%
  %% Measure the execution time (in microseconds) for Fun(Args).
  