- Babel Middleware
Infobox Software
name = Babel
caption =
author =
developer =LLNL
released =
latest release version = 1.2.0
latest release date =November 2008
operating system =cross-platform
genre =middleware
license =LGPL
website = [http://www.llnl.gov/casc/components Babel Home]Babel is an open source
middleware system serving thescientific computing community.As language interoperability tool, Babel enables arbitrary mixing of software
libraries written in C/C++ ,Fortran , Python, and Java [ [https://computation.llnl.gov/casc/components/docs/users_guide.pdf Babel Users' Guide] ] Asdistributed computing platform, Babel provides a language-neutralRemote Method Invocation (RMI) scheme similar toJava RMI that allows third-party plug-ins to specify custom data encodings andnetwork protocols [ [http://doi.ieeecomputersociety.org/10.1109/IPDPS.2007.370222 Babel RMI paper at IPDPS '07] ] .How it works
Babel requires developers to use an
interface description language to specify the platform and language neutral interface to code. Babel uses a custom dialect calledSIDL (Scientific Interface Definition Language ), which has adaptations specific to computational science and engineering applications.The Babel tool parses the SIDL specification to generatesource code which provides the glue between programming languages.Babel works on all known
POSIX and Unix variants, includingLinux ,Mac OS X ,AIX ,IRIX , Solaris,Tru64 , Cray'sXT4 , IBM'sBlueGene , and many commodity clusters. Babel does not require special compiler or linkertechnology and works withGNU ,Intel ,IBM , PathScale, PGI, and many other compilers. Babel is distributed under anLGPL license.Impact
Babel won an
R&D 100 award in2006 [ [http://www.rdmag.com/rd100ach/RD100SearchResults.aspx?strProduct=Babel&Type=P R&D 100 Award Archive] ] [ [https://publicaffairs.llnl.gov/news/news_releases/2006/NR-06-07-01p.html LLNL Public Affairs Archive] ] .It has been used in diverse computational applications such as accelerator beam dynamics, cell biology, chemistry, climate, electron effects, fusion, geomagnetics, materials, nuclear power plants, radio astronomy, and subsurface transport as well as infrastructure such as frameworks, meshing, solvers, sparse linear algebra, and sourcecoderefactoring [ [http://www.iop.org/EJ/article/1742-6596/46/1/066/jpconf6_46_066.pdf | CCA Impact paper at SciDAC 06] ] . Babel is also redistributed with some customer applications, the CCA framework, and [http://packages.debian.org/lenny/babel-1.2.0 Debian Linux] .History
Babel was started as an internal research project on software components at
Lawrence Livermore National Laboratory in1999 .The first public (alpha) release of Babel was in2001 .Also in2001 it secured funding fromSciDAC (Scientific Discovery Through Advanced Computing )along with its collaborators in the [http://www.cca-forum.org | CCA Forum (Common Component Architecture Forum)] .Community
Babel development and maintenance is currently funded by
United States Department of Energy , but relies heavily on an open source community. Contributors hail fromSandia National Laboratories ,Argonne National Laboratory ,Oak Ridge National Laboratory , [http://www.txcorp.com Tech-X Corp] ,MIT ,University of Utah , and more. The Babel development team maintain open software repositories, [https://computation.llnl.gov/casc/components/resources.html mailing lists] , and [http://www.cca-forum.org/bugs/babel issue trackers] .References
ee Also
*
CORBA
*COM
*SWIG External links
* [http://www.llnl.gov/casc/components Babel home page]
* [http://www.cca-forum.org CCA Forum home page]
* [http://www.scidac.org SciDAC home page]
Wikimedia Foundation. 2010.