rts@cs.arizona.edu (Rick Snodgrass) (04/11/91)
Version 5.0 of the Scorpion System is now available for distribution. It runs on the following machines under Unix: Sun-3, Sun-4, DEC Vax, DEC 3100, NeXT, Sequent Symmetry, and HP 9000. The system is entirely in the public domain, and all source code and documentation is included. Scorpion is a medium-scale software development environment. It contains some 20 closely-interacting tools, totalling about 110K source lines of code (the vast majority in C, with some Pascal, lex and yacc code thrown in). The Scorpion System is a meta-environment, that is, a software development environment (SDE) tailored to the production of target SDEs. Scorpion supports communication of fine-grained data between tools in the target SDE. The Scorpion System has been used to construct a variety of specialized programming environments, including those that support change management (the Infuse System developed at Bell Labs and Columbia University), parallel programming (Georgia Tech), design format transformation (Purdue University), ECAD (RECAL/REDAC), conventional compilation (University of New Hampshire), microcode optimization (University of North Carolina), silicon compilation (Columbia University), database query analysis (University of Arizona), software development in Modula-3 (DEC SRC), and, of course, the Scorpion System itself. Scorpion currently uses the Interface Description Language (IDL) as a data specification formalism. IDL allows graph structures containing attributed nodes to be described. It provides a class type system with multiple inheritance. IDL specifies only the data component; method components are supplied by multiple conventional programming languages. IDL was designed to specify structures, such as parse trees, symbol tables, and computation graphs, that are commonly passed between tools in an SDE. These descriptions get translated into target language data declarations and library routines, so that the application can read and write data instances. Basic type generators are sets and sequences, from which iterators are generated. Multiple representations, e.g., of sets as linked lists or as arrays, are supported. There are two ways to get the system. 1. Obtain an order form either from the following address or by email (scorpion-project@cs.arizona.edu); please provide your postal address. The Scorpion Project Department of Computer Science Gould-Simpson Building The University of Arizona Tucson, AZ 85721 U.S.A. (602) 621-8448 Shipments include a 1/2" magnetic tape at 1600bpi or a Sun DC-300 cartridge, plus optional printed copies of the documentation (consisting of some 13 documents comprising about 500 pages; sources of all documents are included in the tar file), and an optional copy of "The Interface Description Language: Definition and Use", by Richard Snodgrass, which is an essential introduction and reference text for using Scorpion. This book, published by Computer Science Press in 1989, is also available through your bookstore (ISBN 0-7167-8198-0). The system is available for a nominal distribution fee; for example, the system on 9-track tape with full documentation (the book and all manuals) costs $100.00, including shipping and handling. 2. FTP the code to your site over the net by typing the following bracketed text without brackets. You should see similar output (the number of bytes is only approximate). Converting to binary mode to transfer the compressed tar file is crucial. % [ ftp cs.arizona.edu ] Connected to cs.arizona.edu. 220 megaron FTP server (Version 4.185 Thu Feb 7 12:22:26 MST 1991) ready. Name (cs.arizona.edu:): [ anonymous ] 331 Guest login ok, send ident as password. Password: [ mylogin@myhost ] 230- Guest login 1 of 25 accepted, access restrictions apply. Welcome to cs.arizona.edu anonymous ftp area. Get the "README" file for details. ftp> [ cd scorpion ] 250 CWD command successful. ftp> [ get README ] 200 PORT command successful. 150 Opening ASCII mode data connection for README (15192 bytes). 226 Transfer complete. local: README remote: README ftp> [ get installation.ps ] 200 PORT command successful. 150 Opening ASCII mode data connection for installation.ps (80750 bytes). 226 Transfer complete. local: installation.ps remote: installation.ps ftp> [ get installation.txt ] 200 PORT command successful. 150 Opening ASCII mode data connection for installation.txt (48480 bytes). 226 Transfer complete. local: installation.txt remote: installation.txt ftp> [ binary ] 200 Type set to I. ftp> [ get scorpion5.0.tar.Z ] 200 PORT command successful. 150 Opening BINARY mode data connection for scorpion5.0.tar.Z (4752821 bytes). 226 Transfer complete. local: scorpion5.0.tar.Z remote: scorpion5.0.tar.Z ftp> [ quit ] 221 Goodbye. % At that point, you can print out the README file and the installation instructions (they come as raw text and as a postscript-format file). Questions should be directed to scorpion-project@cs.arizona.edu, or to the address above. Richard Snodgrass Associate Professor Department of Computer Science University of Arizona Tucson, AZ 85721 rts@cs.arizona.edu -- Send compilers articles to compilers@iecc.cambridge.ma.us or {ima | spdcc | world}!iecc!compilers. Meta-mail to compilers-request.