From f627f77f23d1497c9e1f4269b5c8812d12b42f18 Mon Sep 17 00:00:00 2001 From: Igor Pashev Date: Mon, 28 Jan 2013 19:02:21 +0000 Subject: Imported Upstream version 9.5.0 --- doc/faq.htm | 102 +++++++++++++++++++++++++++++------------------------------- 1 file changed, 49 insertions(+), 53 deletions(-) (limited to 'doc/faq.htm') diff --git a/doc/faq.htm b/doc/faq.htm index 50175fc..ad3d10d 100644 --- a/doc/faq.htm +++ b/doc/faq.htm @@ -11,8 +11,8 @@

Frequently Asked Questions about the Icon programming language

www.cs.arizona.edu/icon/faq.htm -
Last updated November 14, 2005
- +
Last updated April 12, 2010
+

Learning about Icon
A1. What is Icon?
@@ -124,12 +124,15 @@ What are Icon's distinguishing characteristics?

A4. What is the Icon program library?

The library is a collection of programs and procedures written in Icon. -User contributions are welcome and form a significant portion of the library. +User contributions form a significant portion of the library.

Library procedures effectively augment the built-in functions available to an Icon program. A wide variety of procedures currently exists, and most graphically-based programs are built around library procedures. +The core +and +graphics core modules are the most carefully vetted.

The programs in the library range from simple demonstrations to handy tools to complex graphical applications. @@ -161,6 +164,13 @@ Here are some good places to start. www.nmt.edu/tcc/help/lang/icon +

+For the graphics facilities: +

A6. Where are some simple examples?

@@ -203,7 +213,7 @@ describe subsequent changes. Printed copies of the Language and Graphics books are available from Jeffery Systems -(www.zianet.com/jeffery/books). +(http://unicon.org/books/). All three books can be downloaded at no charge from the Icon books page, www.cs.arizona.edu/icon/books.htm. @@ -219,39 +229,39 @@ www.cs.arizona.edu/icon/library/ipl.htm.

There is a large amount of additional information at the Icon web site, -www.cs.arizona.edu/icon. +www.cs.arizona.edu/icon, +including complete sets of back issues of the + +Icon Newsletter and + +Icon Analyst.


Implementations

B1. What platforms support Icon?

-Current implementations with graphics support -are available for Unix (including Linux) and Windows. -The Unix implementation also runs on Darwin, -the Macintosh development environment, or the +The current implementation of Icon is a Unix implementation. +This includes Linux, BSD, Solaris, Macintosh, and the Cygwin environment under Windows. -Older versions of Icon are available for some other systems. +Version 9.5 of Icon has been tested on all these platforms. +

+Older versions are available for Windows and some other systems. An alternative Java-based implementation for Unix, Jcon, is also available. +

+None of these environments includes a window-based development environment. +While Icon programs can open windows and use graphics, +programming is done using Unix editors and other tools from a command shell.

B2. How do I get started with Icon?

-Version 9.4.3 of Icon for Unix can be downloaded from - -www.cs.arizona.edu/icon/v943. +The current version of Icon for Unix can be downloaded from + +www.cs.arizona.edu/icon/current. Source and binary packages are available, each with the complete Icon program library.

-Version 9.3 of Icon for Windows is compatible -at the source level with version 9.4.3. -It can be downloaded from - -www.cs.arizona.edu/icon/v93w.htm. -The Version 9.4.3 library can be obtained separately from - -www.cs.arizona.edu/icon/v943. -

For older implementations, start at www.cs.arizona.edu/icon/implver.htm. @@ -268,14 +278,11 @@ but a Unicode version of Jcon might be possible.

B4. What happened to the compiler?

-For a while, Unix distributions included both an interpreter and a compiler; -but the interpreter is is usually fast enough even for production work, and -most people found that using the compiler wasn't worth the extra compilation -time or the hassles involved. -We no longer advertise the compiler or produce binaries for it. -It is still part of the source code distribution, -and we have not deliberately broken it, -but we no longer support it and we cannot offer help if problems arise. +For a while, Unix distributions included both an interpreter and a compiler. +The compiler was an interesting research project but it has not been +maintained and is no longer supported. +The interpreter is much easier to use and is generally quite fast enough, +even for production applications.


Administration

@@ -290,11 +297,9 @@ Department of Computer Science at the University of Arizona.

C2. How often is the on-line material updated?

-New material is added when it's available. -Established implementations usually are updated only when there's a -new version. -This typically is every year or two. -The Icon program library is updated on a similar schedule. +The Icon implementation is now in maintenance mode, with new releases +produced only when necessary. This typically happens every few years when a +change in the Gnu tools cause the source to stop building.

C3. Where did Icon come from?

@@ -329,7 +334,7 @@ but there's no good solution to that problem.

We continue to use Icon on a daily basis, but no significant changes are planned. -We expect to support the Unix version for the forseeable future, +We expect to support the Unix version for the foreseeable future, and to distribute ports to other systems as supplied by volunteers.

The Unicon project is developing an object-oriented language based on Icon. @@ -364,10 +369,6 @@ For porting assistance or Unix problems, contact icon-project@cs.arizona.edu.

  • -For problems with the Windows implementation, -contact the implementor, -jeffery@cs.nmsu.edu. -
  • For general information and additional documentation, visit the Icon web site: www.cs.arizona.edu/icon. @@ -398,26 +399,21 @@ A simple reference suffices, as in it's not necessary to actually call it.

    (Why does the linker remove unreferenced procedures? -Because this can save huge amounts of memory for -programs that use the library.) +To significantly reduce the memory requirements of +programs that use the library. +There was a time when this mattered.)

    E3. How can I call a C function?

    -You can't call an arbitrary C function, -but if you're willing to write a function to Icon's specifications, -there are two approaches. -Under Unix, which provides loadfunc(), -you can load one or more functions from a shared library, -and then treat them as if they had been written in Icon. +You can't call an arbitrary C function, but you can load and call one +that is written to Icon's specifications. +A tutorial appears in + +Icon Analyst 36. Some examples can be found in the cfuncs and packs/loadfuncs directories of the Icon program library. -The more cumbersome approach is to add code to the Icon interpreter -and rebuild it; some hooks are provided for this purpose. -Both approaches are discussed in Calling C Functions from Icon, - -www.cs.arizona.edu/icon/docs/ipd240.htm.

    The Jcon implementation allows Icon programs to call Java code that is written to Jcon specifications. -- cgit v1.2.3