
                      CONTRIB: Unsupported Modules
                      ============================

This directory contains a number of unsupported modules. ILOG accepts
no responsibility for these modules and we do not guarantee that they
will be maintained.  However, we will gratefully accept any
corrections or improvements to these modules, as well as any new
modules which you think will serve the Talk community.  Other
contributions specific to ILOG Views can be found in
$ILT_DIR/iltviews/contrib.

Current modules and subsystems include:

* cmain: In the cmain/ subdirectory, you will find an example of a C
  program which controls Talk.  In other words, the main() function is
  written in C, but calls Talk --- in this case, it uses the bignum
  package in Talk.  See cmain/README for more information.

* wizard doc: In the file doc/wmanual.ps, you will the "Wizard's
  Reference Manual", which describes some unofficial and unsupported
  features of the ILOG Talk language and environment.

* shape: The shape/ subdirectory contains an example of a small C++
  library which can be bound to Talk.  See the file shape/README for
  more information.

* talk223: For anyone who still has ILOG Talk v. 2 code, the
  subdirectory talk223/ contains a utility to help you translate that
  code to Talk 3.  See the file talk223/README for more information.

* training: The subdirectory training/ contains some of the answers to
  the exercises in the ILOG Talk training course.  See the file
  training/README for more information.

* tic-tac-toe: The subdirectory ttt/ contains the complete code to the
  Tic-Tac-Toe system used for the training course.  This is a system
  which implements a system for playing tic-tac-toe across a network
  and for writing new computerized tic-tac-toe players.  See the file
  ttt/README for more information.

* iltdom: The macros "do" and "do*" are appreciated by some old-time
  Lisp hackers.  The module iltdom in the src/ subdirectory contains
  implementations of these macros.

* progn: The executable progn lets you execute one Talk expression
  from the shell.  The description file for this executable is in
  src/progn.td; the startup module is in src/prognrun.t[d].

* why: Have you ever wondered why your modules import each other?
  The module why, found in src/why.t[d], will answer this and other
  interesting questions.

* version control: The modules found in the files src/iltver*.t[d]
  provide a complete, portable, and extensible interface to version
  control systems.  The complete documentation for these modules is
  found in the "Wizard's Reference Manual", found in doc/wmanual.ps.

* iteration: If you've wanted to extend the 'for' macro, then you may
  want to check out the unsupported modules src/iltiter[sme].t[d].
  They provide a new 'for' iterator called 'in-object:' which uses a
  generic runtime protocol based on iteration objects.  You define
  classes of iterators and methods on the generic functions in the
  protocol which implement the iteration.
