©1994-2003 Kevin Boone
Home     Section index     K-Zone home Download Java

Site search

Glossary
Confused by computer jargon? Look it up!

Shameless plug


Now available!

Articles
- Ten-minute guide to setting up a WAP site

- Talk like your boss: new developments in managerese

More...

Development
File handling in the Linux kernel

Java development for the Sony-Ericsson P800

SunONE Application Server 7 FAQ

More...

Linux
Using Linux with the Treo 600

- Linux on the Tecra M1

- Some notes on openzaurus

More...

Download
Java stuff

Linux stuff

More...

(Please read the download policy)

Home automation
The X10 system

Linux TW723 driver

More...

The K-Zone
K-Zone computing

K-Zone law

K-Zone education and science

K-Zone motorcycles

K-Zone DIY

K-Zone railways

K-Zone martial arts

About the author

K-Zone home page

 
Download
Computing
Wallet
JavaChimes
PhotoIndex
JavaPopt
SunTimes
FileGate
MailGate
MP3 Web interface
jmix
JCalc

JCalc is an attempt to implement a fast, extensible scientific calculator/expression evaluator in Java. It is intended to be included in other Java programs, but a simple command-line client is included as part of the package. JCalc is fully programmable, and supports compilation. It is intended that only the core mathematical functions are implemented internally, and that most of the functionality is supplied by compiled JCalc scripts. To this end, JCalc reads the file `boot/boot.jc' on start-up. This is expected to load further scripts, to implement the functions required. At present only basic logarithmic and trigonometric functions are defined, but adding new functions is not difficult (see the file boot/trig.jct for examples).

Installation

Copy the file `jcalc.jar' to a convenient place (e.g., /usr/lib). Modify the script `jcalc' to be appropriate for your system, and copy it to somewhere in the PATH.

Building

You should not need to do this unless you want to modify the core functionality. In particular, you will not need to do this to add new variables, constants or functions to the program.
       To build the classes from scratch you will need up-to-date versions of jjtree and javacc, available from java.sun.com. This distribution contains a shell script called `build' which builds the complete system into a single JAR called `jcalc.jar'. With this JAR on the CLASSPATH, you can run the command-line client like this: java com.web_tomorrow.jcalc.CmdLine [options] You will almost certainly have to customise the build script for your system. The steps in building the JAR are as follows:
1. Generate parse-tree node by running jjtree on jcalc.jjt
2. Generate the parser by running javacc on jcalc.jj
3. Compile all the generated Java classes, and the supporting classes
4. Run the newly-generated jcalc on the script `bootcompile.jct',
   which compiles the boot scripts. Feel free to add to and modify these
   scripts to implement additional functions. Look at, for example,
   `boot/trig.jct' for the syntax of the `define' function 
5. Package the classes and the compiled boot scripts into the JAR.
Note that extending the function library requires only steps 4 and 5.

For more information, see the README file. For a detailed description, unpack the JAR archive and refer to the file `overview.html' and the javadoc documentation in the `doc' directory.

Download JAR file