diff options
Diffstat (limited to 'doc/docguide.htm')
-rw-r--r-- | doc/docguide.htm | 213 |
1 files changed, 213 insertions, 0 deletions
diff --git a/doc/docguide.htm b/doc/docguide.htm new file mode 100644 index 0000000..9bb4121 --- /dev/null +++ b/doc/docguide.htm @@ -0,0 +1,213 @@ +<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"> +<HTML> +<HEAD> + <TITLE> Icon Documentation Guide </TITLE> + <LINK REL="STYLESHEET" TYPE="text/css" HREF="istyle.css"> + <LINK REL="SHORTCUT ICON" HREF="shortcut.gif"> +</HEAD> +<BODY> + +<P><A HREF="http://www.cs.arizona.edu/icon/"> <IMG SRC="wwwcube.gif" +ALT="[Icon home]" WIDTH=128 HEIGHT=144 BORDER=0 ALIGN=RIGHT> </A> + +<H1> Icon Documentation Guide </H1> + +<P> Gregg M. Townsend +<BR> <SMALL> Department of Computer Science </SMALL> +<BR> <SMALL> The University of Arizona </SMALL> + +<P> <SMALL> www.cs.arizona.edu/icon/v943/docguide.htm +<BR> Last updated November 9, 2005 </SMALL> +<!-- $Id: docguide.htm,v 1.28 2005/11/09 18:03:59 gmt Exp $ --> + + +<H2> Introduction </H2> + +<P> Icon is distributed with a small set of documentation pages: +<UL> +<LI> This documentation guide +<LI> <A HREF=relnotes.htm> Release notes</A> +<LI> <A HREF=install.htm> Installation instructions</A> (for binary releases) +<LI> <A HREF=build.htm> Build instructions</A> (for source releases) +<LI> <A HREF=port.htm> Porting instructions</A> +<LI> <A HREF=files.htm> File organization</A> +<LI> <A HREF=macintosh.htm> Icon on Macintosh</A> +<LI> <A HREF=cygwin.htm> Icon on Cygwin</A> +<LI> <A HREF=faq.htm> Frequently asked questions about Icon</A> +</UL> + +<P> This guide provides an overview of additional available information. +Documents designated with IPD numbers are Icon Project Documents +found at the Icon web site, +<A HREF="http://www.cs.arizona.edu/icon/">www.cs.arizona.edu/icon</A>. + + +<H2> Basic Documentation </H2> + +<P> The command-line interface to Icon is described by <CITE>man</CITE> pages. +The <A HREF="icon.txt"><CODE>icon</CODE></A> command executes a program +from a single source file and supports script usage. +The more general <A HREF="icont.txt"><CODE>icont</CODE></A> command, +modeled after <CITE>cc</CITE>, +supports multiple files, separate compilation, and other features. + +<P> +The Icon language is defined by + <BLOCKQUOTE> + <IMG SRC="lb80.jpg" ALT="[cover]" WIDTH=60 HEIGHT=80 ALIGN=LEFT> + <CITE> The Icon Programming Language, Third Edition </CITE> + <BR> Ralph E. Griswold and Madge T. Griswold + <BR> Peer-to-Peer Communications, 1996, out of print + <BR> ISBN 1-57398-001-3 + <BR> Downloadable from + <A HREF="http://www.cs.arizona.edu/icon/books.htm"> + www.cs.arizona.edu/icon/books.htm</A> + <BR CLEAR=ALL> + </BLOCKQUOTE> + +<P> Some introductory material can be found on the web: +<UL> +<LI> Ralph Griswold's overview: + <A HREF="http://www.cs.arizona.edu/icon/docs/ipd266.htm"> + www.cs.arizona.edu/icon/docs/ipd266.htm</A> +<LI> Dave Hanson's introduction: + <A HREF="http://www.cs.arizona.edu/icon/intro.htm"> + www.cs.arizona.edu/icon/intro.htm</A> +<LI> Bill Mitchell's introduction and slides: + <A HREF="http://www.mitchellsoftwareengineering.com/icon/"> + www.mitchellsoftwareengineering.com/icon</A> +<LI> John Shipman's tutorial: + <A HREF="http://www.nmt.edu/tcc/help/lang/icon/"> + www.nmt.edu/tcc/help/lang/icon</A> +</UL> + +<P> +The <CITE>Icon Programming Language Handbook</CITE>, +by Thomas W. Christopher, is available on the web at +<A HREF="http://www.tools-of-computing.com/tc/CS/iconprog.pdf"> +www.tools-of-computing.com/tc/CS/iconprog.pdf</A>. + + +<H2> Graphics </H2> + +<P> +Icon's graphics facilities are defined by + <BLOCKQUOTE> + <IMG SRC="gb80.jpg" ALT="[cover]" WIDTH=60 HEIGHT=80 ALIGN=LEFT> + <CITE> Graphics Programming in Icon </CITE> + <BR> Ralph E. Griswold, Clinton L. Jeffery, and Gregg M. Townsend + <BR> Peer-to-Peer Communications, 1998, out of print + <BR> ISBN 1-57398-009-9 + <BR> Downloadable from + <A HREF="http://www.cs.arizona.edu/icon/books.htm"> + www.cs.arizona.edu/icon/books.htm</A> + <BR CLEAR=ALL> + </BLOCKQUOTE> + +<P> Two older reports present an overview of Icon's graphics: +<UL> + <LI> IPD281, Graphics facilities for Icon, + <A HREF="http://www.cs.arizona.edu/icon/docs/ipd281.htm"> + www.cs.arizona.edu/icon/docs/ipd281.htm</A> + <LI> IPD284, Visual interfaces for Icon programs, + <A HREF="http://www.cs.arizona.edu/icon/docs/ipd284.htm"> + www.cs.arizona.edu/icon/docs/ipd284.htm</A> +</UL> + + +<H2> Recent feature additions </H2> + +<P> A few minor features have been added since the publication +of the Icon books: +<UL> + <LI> Scriptable source files + <LI> Path searching improvements + <LI> Reading directory contents + <LI> Reading foreign text files +</UL> +These features are more fully described in the +<A HREF=relnotes.htm>release notes</A>. + + +<H2> Program Library </H2> + +<P> Program library documentation is contained within the source code. +Extracted documentation is available at +<A HREF="http://www.cs.arizona.edu/icon/library/ipl.htm"> +www.cs.arizona.edu/icon/library/ipl.htm</A>. + + +<H2> Icon Internals </H2> + +<P> Icon's internals are detailed in + <BLOCKQUOTE> + <IMG SRC="ib80.jpg" ALT="[cover]" WIDTH=55 HEIGHT=80 ALIGN=LEFT> + <CITE>The Implementation of the Icon Programming Language</CITE> + <BR> Ralph E. Griswold and Madge T. Griswold + <BR> Princeton University Press, 1986, out of print + <BR> ISBN 0-691-08431-9 + <BR> Downloadable from + <A HREF="http://www.cs.arizona.edu/icon/books.htm"> + www.cs.arizona.edu/icon/books.htm</A> + <BR CLEAR=ALL> + </BLOCKQUOTE> +Although considerable changes have occurred since Version 6, +described in the book, the basic structure is the same. +Two technical reports describe subsequent changes: +<UL> +<LI>IPD112, Supplementary Information for Version 8, +<A HREF="http://www.cs.arizona.edu/icon/docs/ipd112.htm"> +http://www.cs.arizona.edu/icon/docs/ipd112.htm</A> +<LI>IPD239, Supplementary Information for Version 9, +<A HREF="http://www.cs.arizona.edu/icon/docs/ipd239.htm"> +http://www.cs.arizona.edu/icon/docs/ipd239.htm</A> +</UL> + + +<P> Icon's run-time implementation language is described in IPD261, +<A HREF="http://www.cs.arizona.edu/icon/ftp/doc/ipd261.pdf"> +www.cs.arizona.edu/icon/ftp/doc/ipd261.pdf</A> (PDF). + +<P> The construction of loadable C functions is described in +the <CITE>Dynamic Loading</CITE> section of IPD240, +<A HREF="http://www.cs.arizona.edu/icon/docs/ipd240.htm"> +www.cs.arizona.edu/icon/docs/ipd240.htm</A>. +Also see the examples in the +<A HREF="http://www.cs.arizona.edu/icon/library/ccfuncs.htm"> +<CODE>cfuncs</CODE></A> section of the library, which use +a simpler set of interface macros. + + +<H2> Technical Reports </H2> + +<P> The Icon web site provides a large number of technical reports, +including "Icon Project Documents" designated by IPD numbers. +The index is found at +<A HREF="http://www.cs.arizona.edu/icon/docs/docs.htm"> +www.cs.arizona.edu/icon/docs/docs.htm</A>. + +<P> Many of these reports are historical and describe past research +experiments. +Those cited above are among the most current, +although they may not be completely correct with respect +to Version 9.4. + + +<H2> Discussion Group </H2> + +<P> The Usenet newsgroup <A HREF="news:comp.lang.icon">comp.lang.icon</A> +discusses all aspects of the Icon language and is the best place to ask +programming questions. + + +<H2> Other Sources </H2> + +<P> Other sources of documentation can be found in the +<A HREF="faq.htm"> Icon FAQ </A> and on the Icon web site, +<A HREF="http://www.cs.arizona.edu/icon/"> +www.cs.arizona.edu/icon</A>. + +<P> <HR> + +</BODY> +</HTML> |