Calc Todo Items:

    The following items should be addressed sometime in the short to
    medium term future, if not before the next release.

    Code contributions are welcome.  Send patches to:

	    calc-contrib at asthe dot com

    Calc bug reports, however, should send to:

	    calc-bugs at asthe dot com

    [[ NOTE: Replace 'at' with @, 'dot' is with . and remove the spaces ]]
    [[ NOTE: The EMail address uses 'asthe' and the web site URL uses 'isthe' ]]

    See the BUGS file or try the calc command:

	    help bugs

    See also the 'wishlist' help files for the calc enhancement wish list.

=-=

Very High priority items:

    * Write the help file for the display() builtin function.

    * Write the help file for the stoponerror() builtin function.

    * Update the errmax about the meaning of errmax(-1).

    * Review and if needed, correct/update the help topics:

	    topic		description
	    -----		-----------
	    intro		introduction to calc
	    overview		overview of calc
	    assoc		using associations
	    command		top level commands
	    define		how to define functions
	    environment		how environment variables effect calc
	    errorcodes		calc generated error codes
	    expression		expression sequences
	    file		using files
	    history		command history
	    interrupt		how interrupts are handled
	    list		using lists
	    obj			user defined data types
	    operator		math, relational, logic and variable access ...
	    statement		flow control and declaration statements
	    types		builtin data types
	    unexpected		unexpected syntax/usage surprises for C ...
	    variable		variables and variable declarations
	    libcalc		using the arbitrary precision routines in ...
	    bugs		known bugs and mis-features
	    wishlist		wish list of future enhancements of calc

    * Fix any 'Known bugs' as noted in the BUGS file or as
      displayed by 'calc help bugs'.

    * Internationalize calc by converting calc error messages and
      text strings (e.g., calc startup banner, show output, etc.)
      into calls to the GNU gettext internationalization facility.
      If somebody translated these strings into another language,
      setting $LANG would allow calc to produce error messages
      and text strings in that language.

    * Consider using GNU autoconf / configure to build the calc Makefile.

=-=

High priority items:

    * Verify, complete or fix the 'SEE ALSO' help file sections.

    * Verify, complete or fix the 'LINK LIBRARY' help file sections.

    * Verify, complete or fix the 'LIMITS' help file sections.

    * Verify, complete or fix the 'SYNOPSIS' and 'TYPES' help file sections.

    * Where reasonable, be sure that regress.cal tests builtin functions.

    * Perform a code coverage analysis of the 'make check' action
      and improve the coverage (within reason) of the regress.cal suite.

    * Address, if possible and reasonable, any Calc Mis-features
      as noted in the BUGS file or as displayed by 'calc help bugs'.

=-=

Medium priority items:

    * Complete the use of CONST where appropriate:

	CONST is beginning to be used with read-only tables and some
	function arguments.  This allows certain compilers to better
	optimize the code as well as alerts one to when some value
	is being changed inappropriately.  Use of CONST as in:

	    int foo(CONST int curds, char *CONST whey)

	while legal C is not as useful because the caller is protected
	by the fact that args are passed by value.  However, the
	in the following:

	    int bar(CONST char *fizbin, CONST HALF *data)

	is useful because it calls the compiler that the string pointed
	at by 'fizbin' and the HALF array pointer at by 'data' should be
	treated as read-only.

    * It is overkill to have nearly everything wind up in libcalc.a.

      One should make available a the fundamental math operations
      on ZVALUE, NUMBER and perhaps COMPLEX (without all of the
      other stuff) in a separate library.

    * Clean the source code and document it better.

    * Add a builtin function to access the 64 bit FNV hash which
      is currently being used internally in seed.c.

## Copyright (C) 1999-2003  Landon Curt Noll
##
## Calc is open software; you can redistribute it and/or modify it under
## the terms of the version 2.1 of the GNU Lesser General Public License
## as published by the Free Software Foundation.
##
## Calc is distributed in the hope that it will be useful, but WITHOUT
## ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
## or FITNESS FOR A PARTICULAR PURPOSE.	 See the GNU Lesser General
## Public License for more details.
##
## A copy of version 2.1 of the GNU Lesser General Public License is
## distributed with calc under the filename COPYING-LGPL.  You should have
## received a copy with calc; if not, write to Free Software Foundation, Inc.
## 59 Temple Place, Suite 330, Boston, MA  02111-1307, USA.
##
## @(#) $Revision: 29.5 $
## @(#) $Id: todo,v 29.5 2003/02/25 20:26:17 chongo Exp $
## @(#) $Source: /usr/local/src/cmd/calc/help/RCS/todo,v $
##
## Under source code control:	1999/10/20 07:42:55
## File existed as early as:	1999
##
## chongo <was here> /\oo/\	http://www.isthe.com/chongo/
## Share and enjoy!  :-)	http://www.isthe.com/chongo/tech/comp/calc/
