anchor.diff:  % erl> c(msgpack).
   % erl> S = <some term>.
   % erl> {S, <<>>} = msgpack:unpack( msgpack:pack(S) ).
  --type reason() ::  badarg | short.
  +-type reason() :: {badarg,term()} | incomplete.
   -type msgpack_term() :: [msgpack_term()]
   		      | {[{msgpack_term(),msgpack_term()}]}
   		      | integer() | float() | binary().
  
positive.code: 	error:Error when is_tuple(Error), element(1, Error) =:= error ->
  	    Error;
  	throw:Exception ->
  	    erlang:display(Exception),
  	    {error, Exception}
      end.
  
  
negative.code:     port_close(Port).
  
  other_test()->
      ?assertEqual({error,incomplete},msgpack:unpack(<<>>)).
  
  benchmark_test()->
      Data=[test_data() || _ <- lists:seq(0, 10000)],
  