{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,5,1]],"date-time":"2026-05-01T23:01:25Z","timestamp":1777676485879,"version":"3.51.4"},"reference-count":37,"publisher":"SAGE Publications","issue":"3","license":[{"start":{"date-parts":[[2011,7,7]],"date-time":"2011-07-07T00:00:00Z","timestamp":1309996800000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/journals.sagepub.com\/page\/policies\/text-and-data-mining-license"}],"content-domain":{"domain":["journals.sagepub.com"],"crossmark-restriction":true},"short-container-title":["The International Journal of High Performance Computing Applications"],"published-print":{"date-parts":[[2012,8]]},"abstract":"<jats:p>High-performance scientific applications are usually built from software modules written in multiple programming languages. This raises the issue of language interoperability which involves making calls between languages, converting basic types, and bridging disparate programming models. Babel provides a feature-rich, extensible, high-performance solution to the language interoperability problem currently supporting C, C++, FORTRAN 77, Fortran 90\/95, Fortran 2003\/2008, Python, and Java. Babel supports object-oriented programming features and interface semantics with runtime enforcement. In addition to in-process language interoperability, Babel includes remote method invocation to support hybrid parallel and distributed computing paradigms.<\/jats:p>","DOI":"10.1177\/1094342011414036","type":"journal-article","created":{"date-parts":[[2011,7,8]],"date-time":"2011-07-08T10:03:30Z","timestamp":1310119410000},"page":"260-274","update-policy":"https:\/\/doi.org\/10.1177\/sage-journals-update-policy","source":"Crossref","is-referenced-by-count":22,"title":["High-performance language interoperability for scientific computing through Babel"],"prefix":"10.1177","volume":"26","author":[{"given":"Thomas GW","family":"Epperly","sequence":"first","affiliation":[{"name":"Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Gary","family":"Kumfert","sequence":"additional","affiliation":[{"name":"Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Tamara","family":"Dahlgren","sequence":"additional","affiliation":[{"name":"Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Dietmar","family":"Ebner","sequence":"additional","affiliation":[{"name":"Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Jim","family":"Leek","sequence":"additional","affiliation":[{"name":"Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Adrian","family":"Prantl","sequence":"additional","affiliation":[{"name":"Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Scott","family":"Kohn","sequence":"additional","affiliation":[{"name":"Center for Applied Scientific Computing, Lawrence Livermore National Laboratory, Livermore, CA, USA"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"179","published-online":{"date-parts":[[2011,7,7]]},"reference":[{"key":"bibr1-1094342011414036","unstructured":"Agarwal A, Slee M, Kwiatkowski M (2007) Thrift: Scalable Cross-language Services Implementation. Technical report, Facebook. Available at: http:\/\/incubator.apache.org\/thrift\/static\/thrift-20070401.pdf."},{"key":"bibr2-1094342011414036","unstructured":"Allan BA, Armstrong R (2005) The Ccaffeine framework: Composing and debugging applications interactively and running them statically. Compframe. Extended Abstract."},{"key":"bibr3-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1002\/cpe.911"},{"key":"bibr4-1094342011414036","author":"Beazley DM","year":"1997","journal-title":"Proceedings of the 8th SIAM"},{"key":"bibr5-1094342011414036","author":"Bernholdt DE","year":"2002","journal-title":"Proceedings of the Workshop on Performance Optimization via High-Level Languages (POHLL-02)"},{"key":"bibr6-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1115\/1.2884331"},{"key":"bibr7-1094342011414036","volume-title":"Distributed Component Object Model Protocol\u2014DCOM\/1.0","author":"Brown N","year":"1996"},{"key":"bibr8-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1177\/1094342007078442"},{"key":"bibr9-1094342011414036","unstructured":"Christensen E, Curbera F, Meredith G, Weerawarana S (2001) Web Services Description Language (WSDL) 1.1. Technical report, World Wide Web Consortium. http:\/\/www.w3.org\/TR\/wsdl."},{"key":"bibr10-1094342011414036","volume-title":"Simula Implementation Guide. Technical Report Publication S47","author":"Dahl O","year":"1973"},{"key":"bibr11-1094342011414036","volume-title":"Babel User\u2019s Guide","author":"Dahlgren T","year":"2006"},{"key":"bibr12-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-540-73551-9_11"},{"key":"bibr13-1094342011414036","doi-asserted-by":"crossref","unstructured":"Dahlgren TL (2008) Performance-Driven Interface Contract Enforcement for Scientific Components. PhD thesis, University of California, Davis. Available at http:\/\/www.cs.ucdavis.edu\/research\/tech-reports\/2008\/CSE-2008-6.pdf.","DOI":"10.2172\/932393"},{"key":"bibr14-1094342011414036","first-page":"64","author":"Dahlgren TL","year":"2004","journal-title":"Proceedings of the Workshop on Software Engineering for High Per formance Computing System Applications"},{"key":"bibr15-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1145\/1145319.1145341"},{"key":"bibr16-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1177\/1094342005056136"},{"key":"bibr17-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1145\/1188455.1188483"},{"key":"bibr18-1094342011414036","volume-title":"The Annotated C++ Reference Manual","author":"Ellis M","year":"1990"},{"key":"bibr19-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-47789-6_66"},{"key":"bibr20-1094342011414036","first-page":"270","author":"Govindaraju M","year":"2005","journal-title":"The 12th Annual IEEE International Conference on High Performance Computing (HiPC)"},{"key":"bibr21-1094342011414036","unstructured":"Heller A (2006) Babel speeds communication among programming languages. Science Technology Review 8\u20139. Available at: https:\/\/www.llnl.gov\/str\/Oct06\/pdfs\/10_06.3.pdf."},{"key":"bibr22-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1002\/nme.2339"},{"key":"bibr23-1094342011414036","author":"Kohn SR","year":"2001","journal-title":"PPSC"},{"key":"bibr24-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1145\/318372.318577"},{"key":"bibr25-1094342011414036","unstructured":"Kumfert G (2007) Understanding the CCA standard through Decaf."},{"key":"bibr26-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1088\/1742-6596\/46\/1\/066"},{"key":"bibr27-1094342011414036","volume-title":"Writing a Protocol to Support RMI","author":"Kumfert G","year":"2006"},{"key":"bibr28-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1109\/IPDPS.2007.370222"},{"key":"bibr29-1094342011414036","volume-title":"Object-Oriented Software Construction","author":"Meyer B","year":"1997","edition":"2"},{"key":"bibr30-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1145\/289918.289920"},{"key":"bibr31-1094342011414036","unstructured":"Object Management Group (1998). The Common Object Request Broker: Architecture and Specification. Available at: http:\/\/www.omg.org\/corba."},{"key":"bibr32-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1145\/224170.224354"},{"key":"bibr33-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1002\/cpe.909"},{"key":"bibr34-1094342011414036","volume-title":"COM and DCOM: Microsoft\u2019s Vision for Distributed Objects","author":"Sessions R","year":"1998"},{"key":"bibr35-1094342011414036","unstructured":"Sun Microsystems (1997) Javasoft\u2019s Native Interface for Java. Available at: http:\/\/java.sun.com\/products\/jdk\/1.2\/docs\/guide\/jni\/index.html."},{"key":"bibr36-1094342011414036","unstructured":"Sun Microsystems (2004). Enterprise JavaBeans downloads and specifications. Available at: http:\/\/java.sun.com\/products\/ejb\/docs.html."},{"key":"bibr37-1094342011414036","doi-asserted-by":"publisher","DOI":"10.1109\/HIPS.2004.1299192"}],"container-title":["The International Journal of High Performance Computing Applications"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/journals.sagepub.com\/doi\/pdf\/10.1177\/1094342011414036","content-type":"application\/pdf","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/journals.sagepub.com\/doi\/full-xml\/10.1177\/1094342011414036","content-type":"application\/xml","content-version":"vor","intended-application":"text-mining"},{"URL":"https:\/\/journals.sagepub.com\/doi\/pdf\/10.1177\/1094342011414036","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2026,4,29]],"date-time":"2026-04-29T08:19:06Z","timestamp":1777450746000},"score":1,"resource":{"primary":{"URL":"https:\/\/journals.sagepub.com\/doi\/10.1177\/1094342011414036"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2011,7,7]]},"references-count":37,"journal-issue":{"issue":"3","published-print":{"date-parts":[[2012,8]]}},"alternative-id":["10.1177\/1094342011414036"],"URL":"https:\/\/doi.org\/10.1177\/1094342011414036","relation":{},"ISSN":["1094-3420","1741-2846"],"issn-type":[{"value":"1094-3420","type":"print"},{"value":"1741-2846","type":"electronic"}],"subject":[],"published":{"date-parts":[[2011,7,7]]}}}