

				 CCMD
	   An Implementation of the TOPS-20 COMND Jsys in C


			     Andrew Lowry
			     Howard Kaye
		   Center for Computing Activities
			 Columbia University



INTRODUCTION
------------

CCMD is a general parsing mechanism for developing User Interfaces to
programs.  It is based on the functionality of TOPS-20's COMND Jsys.
CCMD allows a program to parse for various field types (file names,
user names, dates and times, keywords, numbers, arbitrary text,
tokens, etc.).  It is meant to supply a homogeneous user interface
across a variety of machines and operating systems for C programs.
The library defines various default actions (user settable), and
allows field completion, help, file indirection, comments, etc on a
per field basis.  Future plans include command line editing and ports
to other operating systems (such as VMS).  See the CCMD man page for
more details on the user's view of CCMD.  If you are installing CCMD,
see the INSTALL file.


FEATURES
--------

CCMD provides functionality for the following parse types:

	_CMCFM		parse for a confirm (carriage return)
	_CMKEY		parse for a keyword (from a table of keywords)
	_CMNUM		parse a number (of the specified radix)
	_CMQST		parse a quoted string
	_CMNOI		parse a noise (guide) string
	_CMTXT		parse text up to end of line
	_CMFLD		parse a single field 
	_CMSWI		parse a switch (switch character followed by keyword)
	_CMTOK		parse a token
	_CMTAD		parse a time and/or date specification
	_CMFIL		parse a file name
	_CMUSR		parse a user name
	_CMGRP		parse a group name
	_CMPARA		parse a "paragraph" of text ("TEXTI")
	_CMCHAR		parse a single character

In addition CCMD has a command history facility, and soon will have
command line editing capabilities as well.


MACHINES/OPERATING SYSTEMS
--------------------------

CCMD currently runs under UNIX 4.2/4.3 BSD, Ultrix 1.2/2.0, System V,
SunOS, Pyramid, DYNIX (Sequent-Balance 21000), Celerity, and MS-DOS
3.1.


AVAILABILITY
------------

CCMD is currently under development though it has been used for
several years.  Major applications such as Columbia-MM have been
writen using CCMD.

Developers wishing to use CCMD can get a copy via anonymous ftp from
cunixc.cc.columbia.edu  (128.59.40.130) in the ccmd subdirectory.


MAILING LIST
------------

CCMD users (i.e. software developers) may wish to join the INFO-CCMD
mailing list.  To join, send mail to

	INFO-CCMD-REQUEST@cunixc.cc.columbia.edu

Another related mailing list is INFO-TOPSUX which deals with TOPS-20
to UNIX conversion issues.  To join, send mail to

	INFO-TOPSUX-REQUEST@cunixc.cc.columbia.edu



COPYRIGHT
---------

CCMD carries the following copyright notice:


Copyright (c) 1986, 1990 by The Trustees of Columbia University in
the City of New York.

Permission is granted to any individual or institution to use, copy,
or redistribute this software so long as it is not sold for profit,
provided that this notice and the original copyright notices are
retained.  Columbia University makes no representations about the
suitability of this software for any purpose.  It is provided "as is"
without express or implied warranty.
