Eval is a floating point expression evaluator.
This is version 1.18
Copyright (C) 1993-2005  http://willus.com


Brief Description
-----------------
Eval 1.18 is an interactive floating point C-like expression evaluator.
You give it an expression with numeric constants and variables and
functions, and it churns out a numeric answer.  You can use it to
immediately evaluate an expression from the command line, or you can run
it interactively, storing variables as you go so that you can do more
involved calculations.  To use Eval, just give it an expression:

Eval "2*3+sin(_pi*.44/2)"

(The quotes are necessary on some operating systems to prevent
misinterpretation of the * and other special characters).
Or just run Eval without arguments.  Documentation is built-in.
To get Eval to print it's documentation, on most O/S's, just type

Eval help > evalhelp.txt

Then print the file evalhelp.txt.

Eval's features include good precision, input and output in any number
base, a large number of built-in functions and constants, flexible
numeric output format, and ability to save and recall sessions from disk.
Eval, however, does not have these features:  arbitrary precision, symbolic
manipulation, dynamic function definition, and complex numbers.

You can modify Eval to your heart's content.  The source code is included
with this distribution.  To see how to add custom functions or constants,
see the "Source Code" section below.  The source is in ANSI C and has no
conditional compile directives.  I have compiled Eval without modification
on several different ANSI C compilers, including gcc, the MIPS u-code C
compiler, the NERSC cc compiler, Macintosh Think C 5.0, Turbo C 2.0,
Manx Aztec C 5.2 (Amiga), and SAS C 6.0 (Amiga).  I have compiled on
VMS with minor modifications due to the compiler I used not being ANSI
standard.


Licensing
---------
This is my first venture into public domain software, and while I hate
dealing with rules and licenses and all that, I decided that I had to
protect myself, so I am using the GNU public license agreement to set
the terms for redistributing this software.  Please read the GNU public
license agreement in the file, COPYING.  In sum, the license allows you
to freely copy and modify this software, but you can't pull any dirty
tricks like using it for profit or calling it your own or making up your
own restrictions on it if you redistribute it.


Distribution Description -- General Distribution
------------------------------------------------
This distribution comes with the full source code to Eval, which is
written for ANSI compliant C compilers.  This distribution also includes
an executable that will run in Win 95/98/NT and also in Win 3.11 or in
MS-DOS with the support of rsx.exe and csx.exe (put these files somewhere
in your path).


Distribution Files
------------------
*.c            C source
eval.h         Master header file
makefile.ama   Amiga Makefile for Manx C 5.X
makefile.asa   Amiga Makefile for SAS C 6.X
makefile.unx   Generic Unix Makefile
Makefile       Makefile for RSX/NT gcc in Win 95/98/NT
COPYING        GNU Public License
bhelp.txt      Help text for brief help
ehelp.txt      Help text for extended help
               (bhelp.txt and ehelp.txt are converted to help.c by makehelp.c)
intro.txt      Brief introduction to Eval
csx.exe        RSX/NT DPMI memory driver for MS-DOS
rsx.exe        RSX/NT support for Win 3.11 and MS-DOS
readme.txt     This file
eval.man       Unix style man page for Eval
history.txt    Version history of Eval
eval.exe       Win 95/98/NT executable


Closing comments
----------------
That's it.  I hope Eval is of use to you.
To contact me, go to http://willus.com.
