[net.lang] Icon for the Sun workstation

whm@arizona.UUCP (Bill Mitchell) (02/03/85)

The University of Arizona is pleased to announce the availability of Release
5.9 of the Icon programming language for the Sun workstation.  This release
of Icon is known to work on Sun's Release 1.2.  Assuming the Sun documentation
is correct, Icon should also work on releases dating back as far as 0.4, but
this has not been substantiated.

The Sun-specific code is an addition to our current distribution for UNIX
VAXs and split I/D PDP-11s with V7; the new distribution can be configured
to run on any of these three types of systems.

Icon is entirely in the public domain and complete source code for all
system components is included.

To get an Icon system, please t/nroff the form below with -ms, complete it,
and send it in along with a 1/2" 9-track reel tape at least 600 feet long.
All tapes are written in tar format.  Please note that the only available
distribution media is 1/2" reel tape; we do not have facilities to write
1/4" tape cartridges.

The only up-to-date and complete documentation of Version 5 of Icon is
contained in the following book (generally referred to as "the Icon book"):

   The Icon Programming Language, Ralph E. Griswold and Madge T. Griswold.
   Prentice-Hall, Inc., Englewood Cliffs, NJ.  1983.  313 pages, paperback.

This book should be available through any seller of new books.  It is
not available through the University of Arizona.

There is a brief (9-page) overview of Icon available as University of
Arizona technical report TR 83-3a.  This report will be sent via the Postal
Service, free of charge, to anyone who requests it.

The Icon run-time system has knowledge of C stack frames and thus this
version may or may not work on other 68k systems.  I did some testing
on a number of 68k systems at Uniforum and it looks like most everybody's
68k system has suitable frames.  The basic requirements are:

	Ints are 32 bits.

	Locals are allocated in a FIFO order; space is reserved for non-
	 register locals regardless of whether they are used.

	Subroutine parameters are at a6@(-8) and up.
	 
	Locals are at a6@(-4) and down.

	The instruction at the entry point of a subroutine is " link a6,...".

The 68k systems that I saw that Icon will not currently work on are:

	Apollo -- Hopelessly different stack layout.
	Cadmus -- Seems to start allocating locals at a6@(-30), but nobody
		   that I talked to knew why.  Probably something to do
		   with register saving.
	NBI's U! -- Uses a branch to " link a6,..." in the entry protocol.
		     Probably could be made to work with only a slight
		     amount of effort.

If you can't understand the above, but would like to see if Icon will work
on your 68k, compile the following program with -S and send us the .s file.

main(a) { int x,y; a = 1; x = 2; y = 3; f(a,x,y); return 1; }

Requests for further information about Icon should be directed to:

	icon-project.arizona@csnet-relay
-or-
	{ihnp4,noao,mcnc,purdue,utah-cs}!arizona!icon-project
	
We try to answer all mail promptly; if you do not receive a response to
your letter in a day or two, it is quite possible that a letter was lost
somewhere along the line.  In such cases, please try again.

					Bill Mitchell

Request form:
=============
.nr LL 6.5i
.ds CF
.de LE
\l'3.9i'
.sp 1
..
.de Ip
.IP "\\$1" 25
.LE
..
.LP
.ce 1
\f3Version 5.9 UNIX Icon Distribution Request\fR
.sp 2
\fINote:\fR This system can be configured for PDP-11s with separate I and
D spaces, VAX-11s, or Sun workstations.
.sp 1.5
Contact Information:
.sp 1
.Ip name
.Ip address
.LE
.LE
.LE
.Ip telephone
.Ip "electronic mail address"
.sp 1
.Ip computer
.Ip "operating system"
.sp 1
.LP
All tapes are written in 9-track \fItar\fR format.
Preferred tape recording density:
.sp 1
\(sq   1600 bpi\h'|1.8i'\(sq   800 bpi
.sp 1.2
Return this form to:
.DS
Icon Project
Department of Computer Science
The University of Arizona
Tucson, AZ   85721
.DE
Enclose a magnetic tape (at least 600\(fm) \fIor\fR a check for $15
payable to the University of Arizona.