What's New in 0.6?
These features were added in 0.6:
- A completely new thermography engine with support for extended thermograpy.
- Improved display of thermographs, with several options to customize the
display.
- Greatly improved algorithms for loopy games calculations (thanks to
Michael Albert for suggesting the more efficient algorithms).
- Support for rational numbers with large or non-dyadic denominators (e.g. 2-50
and 1/3).
- An improved plug-in registration process with substantially better error
handling.
- Various new methods, operators and bugfixes.
There are many more minor changes. As always, see the WHATSNEW
file included with CGSuite for a
complete list.
Notes to users upgrading from previous versions:
- The operator
:=
has been added as an assignment operator in
order to maintain consistency with Maple and GAP. It is completely
equivalent to the old =
operator. However, users are
encouraged to start using :=
in place of =
.
- The methods
GNth
and GToNth
have been renamed Pow
and PowTo
, respectively.
- Several API changes were made for this release. If you wrote a
plug-in for version 0.5 or earlier, it might need to be updated. A
complete list of API changes can be found at: http://www.cgsuite.org/renames.html
- The entire process of writing plug-ins has been substantially simplified.
A completely new plug-in tutorial is available; anyone interested in writing
plug-ins for version 0.6, including users upgrading from older versions, is
encouraged to take the tutorial. The tutorial can be found at: http://www.cgsuite.org/docs/
These features were added in 0.5:
- A completely rewritten canonical games library that uses five to ten times
less memory than 0.4.
- A feature to save "kernel databases" to the disk (File/Write Database). This records all calculations made during a CGSuite session.
The database can be loaded and a later time. This allows massive
calculations to be broken into manageable chunks. CGSuite will also save
a backup database at periodic intervals during long calculations (the default
is once per hour) to protect against system crashes and power failures.
(Caution: Don't rely too much on the permanence of the databases, since
the format might change with the next release.)
- An improved explorer report that shows the thermograph and atomic weight
of a game in addition to its canonical form. Additional information will
be added in future releases.
- Kernel pause/resume/cancel.
- The GUI outputs now display and update much faster, using substantially
less memory.
- Improved kernel logging and memory usage reporting.
These features were added in 0.4:
- A full-featured scripting language, including if/then/else conditionals,
for loops, and recursive function definitions.
- Algorithms for finding sensible moves (those that correspond to a
position's canonical options) and orthodox moves (those that affect a
position's thermograph) in arbitrary games.
- An explorer feature that expands only sensible or orthodox moves.
- Substantially improved error messages.
- An option to run scripts directly from the command-line, bypassing the
interface entirely. The syntax is:
java -jar cgsuite.jar -s infile outfile
- An expanded tutorial describing the new features. To access the
tutorial, select "Getting Started" from the Help menu.
- Several example scripts.
- Mean and temperature labels for thermographs.
These features were added in 0.3:
- An Explorer component, designed by Samson de Jager, that allows graphical
editing of game positions. To create an explorer, click
File/New/Explorer, or enter
Edit(G)
into a worksheet, where G is a
game. For example: Edit(DomineeringRectangle(5,5))
You
can also use the Explorer to browse game trees.
- A text interface. You can now type:
java -jar cgsuite.jar -t
to run CGSuite without the GUI. A few other command-line options are now
available; type
java -jar cgsuite.jar -h
for a list of them.