[ANN] Kats available (on SqueakMap)

Stephen Pair spair at acm.org
Mon Dec 9 21:29:33 UTC 2002


Name:		Kats
Summary:	a object oriented transaction system 
Author:		Stephen Pair <spair at acm.org>
Maintainer:	Stephen Pair <spair at acm.org>
Registrant:	spair at acm.org

Categories: 
	Maturity level/Bleeding edge - Hardly runnable, full of bugs!
For developers only.
	Licenses/SqueakL - The license of Squeak from Apple. The only
license we allow for inclusion in base Squeak.
	Squeak versions/Squeak3.4 - 
	Squeak versions/Squeak3.2.1 - The maintenance branch of 3.2, go
there for future 3.2 fixes.
	Squeak versions/Squeak3.2 - Released 16 Jul 2002.

Current version: 1.0
Homepage:	http://spair.swiki.net/20
Download:	http://people.advantive.com/~spair/squeak/Kats.sar

Description:
Prerequisites: Runtime Environments, IvapParser (for non Chango VMs)

Kats is a transaction service that operates entirely in memory. It
allows you to organize the mutations of objects into logical units of
work that transition the system from one consistent state to another in
an atomic fashion. Kats has the following features:

    * A pluggable two-phase commit protocol
    * Support for optimistic and pessimistic concurrency
    * No need for special coding on the developer's part to support
transactions
    * A transaction explorer for observing, creating and testing active
transactions in the system (includes a transactional workspace)
    * Transactional inspector for viewing objects in a given transaction
context
    * Transactional Workspace for evaluating expressions in the context
of a transaction
    * Nested transactions (arbitrary depth)
    * State management (through a state context resource)
    * Process execution management (through an execution context)
    * Automatic conflict detection (using a default conflict detection
algorithm)
    * Ability to customize the concurrency semantics for any given
object
    * Object locking (read, write, and exclusive)
    * A generic TxObject for convenient transaction support (by
subclassing)
    * Support for the Chango VM for transparent state management
    * A transactional aspect installation/deinstallation tool (for
making existing classes transactional)
    * A number of transactional collection classes with concurrency
semantics designed to minimize conflict

The following list is some of work that remains (contact me if you are
interested in contributing):

    * Documentation (especially a tutorial) 




More information about the Squeak-dev mailing list