Skip to main content
U.S. Department of Energy
Office of Scientific and Technical Information

Preliminary Thoughts on Introducing Structs to SIDL/Babel: White Paper

Technical Report ·
DOI:https://doi.org/10.2172/15009763· OSTI ID:15009763

In the past 6 months, there has been increased interest in adding something analogous to C structs to the SIDL language and the Babel language interoperability tool [2, 6]. In particular, Rob Armstrong, of the Common Component Architecture [4], said the lack of structs ''is an oft-cited reason that people can't use Babel.'' Because the interest is high and lack of structs is a barrier to Babel adoption, we must carefully consider the current work around, the motivations for structs, the implications of adding structs, and the alternatives for structs in SIDL/Babel. This document provides the background necessary for a discussion of structs in SIDL/Babel. For the purposes of this document, I am going to call the potential new language feature a SIDL struct. The SIDL struct is analogous to a C struct, a Pascal record, or a Fortran 90 (F90) derived data type. It is a collection of data with no methods or behavior associated with it. Each element of the collection has a name and a type. SIDL structs allow for data abstraction, but they do not provide data hiding. All data is public in a SIDL struct.

Research Organization:
Lawrence Livermore National Lab., Livermore, CA (US)
Sponsoring Organization:
US Department of Energy (US)
DOE Contract Number:
W-7405-ENG-48
OSTI ID:
15009763
Report Number(s):
UCRL-TR-201771
Country of Publication:
United States
Language:
English

Similar Records

Multi-language Struct Support in Babel
Conference · Tue Mar 22 00:00:00 EDT 2011 · OSTI ID:1030209

Babel Fortran 2003 Binding for Structured Data Types
Conference · Fri May 02 00:00:00 EDT 2008 · OSTI ID:938498

Toward the Automated Generation of Components from Existing Source Code
Conference · Wed Dec 01 23:00:00 EST 2004 · OSTI ID:15014737