softlab@unc.UUCP (SoftLab Distribution) (12/16/85)
RELEASE OF THE IDL TOOLKIT Richard Snodgrass Department of Computer Science University of North Carolina Chapel Hill, NC 27514 A collection of tools supporting the Interface Descrip- tion Language (IDL) is now available for the Vax running under Berkeley UNIX 4.2BSD and the Sun workstation running under Sun UNIX 2.0. These tools automate the production of a portion of compilers and other programming environment components; in this way they are similar to lex and yacc. The tools have been used to construct several compilers here at UNC and at Columbia University and Ohio State University. IDL is a notation for describing abstract data struc- tures; these specifications can be translated into readers and writers, as well an internal manipulation routines. Tools in a software system often pass around complex struc- tures; IDL allows much of the mundane code that involve these structures to be automatically generated (in one typi- cal example, 14% of the source was generated by lex and yacc; another 37% was generated by the IDL toolkit). The best known IDL specification is Diana, which has become a de facto standard intermediate representation of Ada programs. IDL was designed by John Nestor, William Wulf, and David Lamb, and is described in Nestor, J.R., W.A. Wulf, and D.A. Lamb, Interface Description Language: Formal Description, Revision 2.0, Technical Report, Computer Science Department, Carnegie-Mellon University, Pittsburgh, PA, June 1982. Lamb, D.A., Sharing Intermediate Representations: The Interface Description Language, Ph.D. Disserta- tion, Computer Science Department, Carnegie-Mellon University, Pittsburgh, PA, May 1983. Warren, W.B., J. Kickenson, and R. Snodgrass, A Tutorial Introduction to Using IDL, SoftLab Document 1, Computer Science Department, University of North Carolina, Chapel Hill, NC, November, 1985. The IDL Toolkit contains several tools for manipulating IDL structure specifications and instances of these struc- tures. The tools include a compiler for IDL which produces C code for the readers and writers, a graphical printer of IDL instances generating output for lineprinters and the Imagen laser printer, a generic instance reader, a specification expander, an instance formatter, and a simple cross referencer. The tools have been in use since May, 1985, are robust and are well documented. The distribution consists of a 1600 bpi magnetic tape containing all source code, seven manuals totalling almost 300 pages, and installation instructions. The source is approximately 60,000 lines, or 2 Mbytes; the object code is approximately .7 Mbytes. The toolkit is available to educa- tional institutions for a distribution cost of $300; others should make arrangements with Richard Snodgrass, phone (919) 962-4530. To request a copy of the tutorial and a distribu- tion agreement, please communicate your name, affilication and post office address to Donna Boggs Snail Mail: SoftLab Distribution Coordinator Department of Computer Science University of North Carolina Chapel Hill, NC 27514 Phone: (919) 962-7330 Electronic Mail: softlab@unc (csnet) softlab.unc@CSNET-RELAY (ARPAnet)