Mapping the Interface Description Language Type Model into C

The Interface Description Language (IDL) is a notation for describing the characteristics of data structures passed among collections of cooperating processes in a programming environment. The authors discuss a mapping from IDL to C data structures and macro definitions that supports the full language and is type safe and run-time efficient, but is not particularly compile-time efficient nor easy to use. They then propose that the mapping be performed in a preprocessor, thereby achieving efficiency and ease of use as well. >

[1]  Niklaus Wirth,et al.  From Modula to Oberon and the programming language Oberon , 1987 .

[2]  David Robson,et al.  Smalltalk-80: The Language and Its Implementation , 1983 .

[3]  Murray Hill,et al.  Lint, a C Program Checker , 1978 .

[4]  Jürgen Uhl A Formal Definition of Diana , 1983, Ada Software Tools Interfaces.

[5]  Gordon S. Novak Data abstraction in GLISP , 1983, ACM SIGPLAN Notices.

[6]  Guido Persch The Use of Diana in Compilers, Language Transformers, Formatters and Debuggers , 1983, Ada Software Tools Interfaces.

[7]  David Alex Lamb,et al.  IDL: sharing intermediate representations , 1987, TOPL.

[8]  Henry Ledgard,et al.  Reference Manual for the ADA® Programming Language , 1983, Springer New York.

[9]  Robert E. Strom,et al.  Typestate: A programming language concept for enhancing software reliability , 1986, IEEE Transactions on Software Engineering.

[10]  R. B. House,et al.  At the University of North Carolina , 1945 .

[11]  G. S. Novak Data abstraction in GLISP , 1983, SIGPLAN '83.

[12]  M. P. Harrison Dianette - A Pragmatic Variant of Diana , 1983, Ada Software Tools Interfaces.

[13]  Bjarne Stroustrup,et al.  Multiple Inheritance for C++ , 1989, Comput. Syst..

[14]  Bjarne Stroustrup,et al.  C++ Programming Language , 1986, IEEE Softw..

[15]  Paul Rovner Extending Modula-2 to Build Large, Integrated Systems , 1986, IEEE Software.

[16]  David Alex Lamb,et al.  Testing for Class Membership in Multi-Parent Hierarchies , 1988, Inf. Process. Lett..

[17]  S. E. Keller,et al.  The Diana Interfacer , 1983, Ada Software Tools Interfaces.

[18]  Benjamin G. Zorn Experiences with Ada Code Generation , 1984 .

[19]  John B. Shoven,et al.  I , Edinburgh Medical and Surgical Journal.

[20]  Richard T. Snodgrass Interface description language - definition and use , 1989, Principles of computer science series.

[21]  Niklaus Wirth,et al.  Type extensions , 1988, TOPL.

[22]  David Maier,et al.  Development of an object-oriented DBMS , 1986, OOPSLA 1986.

[23]  Gerhard Goos,et al.  DIANA - An Intermediate Language for Ada, Revised Version , 1983 .

[24]  James S Briggs The Design of AIR and its Application to Ada Separate Compilation , 1983, Ada Software Tools Interfaces.

[25]  Arol Ambler,et al.  Chatin's graph coloring algorithm as a method for assigning positions to Diana attributes , 1983, SIGP.

[26]  David Alex Lamb Sharing intermediate representations: the interface description language , 1983 .

[27]  Jonathan Jacky,et al.  An object-oriented programming discipline for standard Pascal , 1987, CACM.

[28]  Alfred Strohmeier,et al.  SARTEX a programming language for graph processing , 1985, SIGP.

[29]  Steven P. Reiss,et al.  An approach to incremental compilation , 1984, SIGPLAN '84.

[30]  Guido Persch,et al.  The Intermediate Language Diana , 1983, Ada Software Tools Interfaces.

[31]  S. Tucker Taft Diana as an internal representation in an Ada-in-Ada compiler , 1982, AdaTEC '82.

[32]  Richard T. Snodgrass,et al.  Supporting Flexible and Efficient Tool Integration , 1986, Advanced Programming Environments.