anchor.diff:  subscriber = rossubscriber('/scan', @callback);  
   ----
   
  -Overall, we found that the ROS support toolbox looks very nice and is a great example of how seamless external languages could be integrated with MATLAB. We also really liked that they offered a way to load log files (rosbags).
  -
  -One concern we had was that there didn't seem to be a simple non-blocking way to check for new messages, e.g., a _hasNewMessage()_ method or functionality equivalent to LCM's _getNextMessage(0)_. This would probably be useful for applications that combine data from multiple topics that may arrive at different rates (e.g. sensor feedback and joystick input events). We checked whether this behavior could be emulated by specifying a very small timeout, but any value below 0.1s seemed to never successfully return.
  +Overall, we found that the ROS support toolbox looked very nice and was a great example of how seamless external languages could be integrated with MATLAB. We also really liked that they offered a way to load log files (rosbags).
  +
  +One concern we had was that there didn't seem to be a simple non-blocking way to check for new messages, e.g., a _hasNewMessage()_ method or functionality equivalent to LCM's _getNextMessage(0)_. We often found this useful for applications that combined data from multiple topics that arrived at different rates (e.g. sensor feedback and joystick input events). We checked whether this behavior could be emulated by specifying a very small timeout (see below), but any value below 0.1s seemed to never successfully return.
   
   [source,matlab]
   ----
  
positive.code: 
  | http://fileadmin.cs.lth.se/cs/education/MMKN30/Nao/download/Documentation/dev/matlab/index.html[Aldebaran Nao]
  | Seems to be deprecated
  | Creates XML messages and sends them to a service running locally on the servo
  
  | https://github.com/ragavsathish/RabbitMQ-Matlab-Client[RabbitMQ] 
  | Simple Java wrapper for RabbitMQ 
  
  | http://support.robotis.com/en/software/dynamixel_sdk/usb2dynamixel/windows/matlab.htm[Robotis Dynamixel]
  | C library that provides utility functions to manually create the protocol structure
  
  | https://sourceforge.net/projects/urbi/?source=typ_redirect[URBI] (http://agents.csse.uwa.edu.au/aibosig/resources/downloads/tutorial_liburbiMatlab_0.1.pdf[tutorial])
  | Seems to be deprecated
  
  | http://fileadmin.cs.lth.se/cs/education/MMKN30/Nao/download/Documentation/dev/matlab/index.html[Aldebaran Nao]
  | Seems to be deprecated
  
  |====================
  
  
negative.code: classdef WrappedMessage
  
      properties (Access = protected)
          JavaMessage % The underlying Java message object
      end
      
      methods
      
          function name = get.Name(obj)
              name = char(obj.JavaMessage.getName);
          end
          
          function set.Name(obj, name)
              validateattributes(name, {'char'}, {}, 'WrappedMessage', 'Name');
              obj.JavaMessage.setName(name); % Forward to Java method
          end
          
          function out = doSomething(obj)
              try
                  out = obj.JavaMessage.doSomething(); % Forward to Java method
              catch javaException
                  throw(WrappedException(javaException)); % Hide Java exception
              end
          end
          
  