title: CORBA: omniORB vs. TAO vs. MICO vs. Orbit
body: <p>I want to use CORBA for a C application and thus I wanted to compare the various implementations available on the internet, e.g. the ones mentioned in the title. However, I can't find any comparison that is remotely up-to-date, like <a href="https://mail.gnome.org/archives/gnome-devel-list/2001-June/msg00024.html" rel="nofollow noreferrer">this</a> and <a href="http://newsgroups.derkeiler.com/Archive/Comp/comp.object.corba/2005-10/msg00008.html" rel="nofollow noreferrer">this</a>.</p>
  
  <p>My core requirements are as follows:</p>
  
  <ul>
  <li>Client and server can be created in different languages and compiled on different OS's.</li>
  <li>The server must be able to push calls.</li>
  <li>No data overhead, i.e. Web Service with their relatively huge xml messages are out of question.</li>
  <li>The CORBA implementation must be available under a free license that allows creation of commercial applications.</li>
  </ul>
  
  <p>Can anyone here give advice? I know CORBA is old, as I have read
  <a href="https://stackoverflow.com/questions/3835785/why-has-corba-lost-popularity/">Why has CORBA lost popularity?</a> and <a href="https://stackoverflow.com/questions/1226050/is-corba-legacy">Is CORBA legacy?</a>, so I don't want to start another discussion on how horribly bloated CORBA is etc. I'd just like to know which implementation fits my requirements the best, but if you know of something that's better than CORBA, feel free to post it here, too.</p>
  
  <p>Cheers
  Alex</p>