title: Interacting with events and listeners in MATLAB
body: <p>I want to write GUI code that is orthogonal. Lets say I have a circle class and a square class and they need to interact. Right now, to get the circle and square talking to each other - say the circle object sends a message to the square object, I would use something like <code>square_obj.listen_for_circle(circle_obj)</code> where <code>listen_for_circle</code> is a method that implements an addlistener.</p>
  
  <p>This is a problem for me since now the two objects are linked - and removing one object from my code would break it. What I am looking to do is for the circle_obj to be able to broadcast a global message say <code>'CIRCLE_EVENT'</code>. Additionally square_obj would be listening for global message broadcasts of type <code>'CIRCLE_EVENT'</code>, and upon hearing the event - does some action.(Ahhh, now the objects have no links to each other in the code base!)</p>
  
  <p>Is this possible or even reasonable in MATLAB? (or maybe i'm just going crazy).
  As always, advice much appreciated.</p>