[comp.sys.mac] ICON Language sources needed

gus@Shasta.UUCP (02/06/87)

Several months ago, Keith Nemitz posted a port of Ralph and Madge Griswold's
ICON programming language on net.sources.mac. This included MPW binaries and
compare files which showed the changes he made to the source code. The thing
actually works, and I suggest that if you are initerested in truly unique
programming models, that you take a look at this. The manual is published by
Prentice Hall and describes the language quite well.

Now:

1) What is Keith Nemitz's net address? I seem to have completely lost it.
2) Does anyone have the complete MPW source to ICON, or at least the version
    of the UNIX source from which the Mac version was derived. (It is not
    the version which came with the 4.2BSD contributed library. The latter 
    does not have a linked list module in the translator, for one thing, and 
    does not seem to have MS-DOS #IFDEFs.
3) The book alludes to a second book: The Implementation of the ICON
    Programming Language, which I would guess would have a lot of interesting
    internal documentation. There are LOTS of interesting algorithms in this
    thing!
4) Does anyone have any medium to large applications written in ICON which 
    really take advantage of the unique features of the language? I have TONS
    of 1 page or less examples, but nothing substantial.
5) Here is the 8 queens problem in ICON as shown on page 153 of the manual.

procedure main()
   every write(q(1),q(2),q(3),q(4),q(5),q(6),q(7),q(8))
end

procedure q(c)
   suspend place(1 to 8,c)			# Look for a row
end

procedure place(r,c)
   static up,down,row
   initial {
      up:= list(15,0)
	  down := list(15,0)
	  row := list(8,0)
	  }
   if row[r] = down[r+c-1] = up[8+r-c] = 0
   then suspend row[r] <- down[r+c-1] <-
     up[8+r-c] <- r					# Place if free
end


can anyone figure out how to create a general construct which itterates from
m to n, backtracking when necessary, the way the main() procedure does,
without explicitly writing q(1),q(2),q(3)...q(8)?

							Gus Fernandez
       

mrh@Shasta.UUCP (02/07/87)

In article <1231@Shasta.STANFORD.EDU>, gus@Shasta.STANFORD.EDU (Gus Fernandez) writes:
> Several months ago, Keith Nemitz posted a port of Ralph and Madge Griswold's
> ICON programming language on net.sources.mac. This included MPW binaries and
> compare files which showed the changes he made to the source code. The thing
           .....

> 2) Does anyone have the complete MPW source to ICON, or at least the version
>     of the UNIX source from which the Mac version was derived. (It is not
> ....
> 							Gus Fernandez

  My apologies to those without ftp access but: the source was posted to 
info-mac some time ago and should be something like
   ICON.HQX in the info-mac directory on sumex. It is extremely large but 
perhaps GUS would be willing to break it into pieces and post it to 
mod.mac.sources if he does fetch it from info-mac...
David Gelphman

bobc@tikal.UUCP (02/11/87)

In article <1231@Shasta.STANFORD.EDU> gus@Shasta.STANFORD.EDU (Gus Fernandez) writes:
>1) What is Keith Nemitz's net address? I seem to have completely lost it.

Keith Nemitz has left the network (and is still suffering from withdrawal),
He currently is working for A.P.P.L.E. (and APDA). 

>2) Does anyone have the complete MPW source to ICON, or at least the version
>    of the UNIX source from which the Mac version was derived. (It is not
>    the version which came with the 4.2BSD contributed library. The latter 
>    does not have a linked list module in the translator, for one thing, and 
>    does not seem to have MS-DOS #IFDEFs.

The version of icon used was v6, I have it but don't want to spend my
time sending it to other people.  As noted in another peice of news
(from Spokane) it is available from Griswold's group at the University
of Arizona.  I also have the MPW source, but don't have the time to do
anything with it.  I can (with in reason) forward letters to Keith,
and I do have his address (but it is at home not work).


Bob Campbell
Teltone Corporation		18520 - 66th AVE NE
P.O. Box 657			Seattle, WA 98155
Kirkland, WA 98033

bobc@tikal.teltone.com
{amc,dataio,fluke,hplsla,sunup,uw-beaver}!tikal!bobc
tikal!bobc@beaver.cs.washington.EDU