[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Potential new project: Calculator (scientific, graphing, statistical)



This is one of my project ideas that I have percieved a need for.
However, before I started putting too much effort into it, I wanted to
run the idea past you folks to make sure that
 A) It doesn't already exist, and
 B) That the educational community percieves it as a worthwhile project.
    If not, I have other projects to spend my time on.

The remainder of this post is from the project web page:
http://www.poboxes.com/kevint/linux/valdivia.html

Valdivia

(Vapourware)

Valdivia is the program that makes your Linux box as easy to use as your
pocket calculator. I suspect its primary audience is algebra through
pre-calculus students and educators, as well as lab students, or those
who find themselves doing the type of math they did when they were in
algebra through pre-calc.

Here are my design criteria for Valdivia. These aren't at all novel
concepts, but I haven't found a free application on a free platform
which puts them together yet (like the TI-8? series of calculators
does). If there is one, let me know, and it will save me from
reinventing the wheel:

   * Ease of use over all. Geek-power is not a priority. That means letting
     people use infix notation, not just RPN.
   * Expression editing. You can type in a full expression, not just perform
     unary or binary operations one at a time like a 4-function calculator.
     Also an expression history window, so you can see your previous
     expressions and their results.
   * Function grapher.
   * Constants and variables.
   * List data types and the operations to go with them. Point-plotting and
     basic statistical functions.

Note that the combination of genius and geg (see below) would bring us
very close to Valdivia. So why create another application when two
perfectly functional programs already exist?

It's a good question to ask. After all, a function grapher hardly needs
a calculator, nor does a calculator have any dependance on a graph.
Sure, sharing variables between the two might be convient, but hardly
calls for a new program. The missing piece, I think, is the statistics.
xldlas does some sorts of things very nicely, but it needs a better way
to do data list manipulation... Like let lists be in Valdivia
expressions. And then we can both plot the data points and our line of
best fit on the same graph, and see what they look like (which is not
easily done in xldlas)...

Implementation Notes

   * Since function graphing is graphical, and there are already a wide
     collection of decent command-line calculator programs, we might as well
     put a GUI on it. One target is GNOME, because it looks like a promising
     trend. Whether or not a text-mode (SLang?) GUI in addition would
     provide sufficient advantage over existing command-line tools to be
     worth the effort is a subject open to debate.
   * The option to export to a format which gnuplot can interpret would be
     wise, because gnuplot is a nice piece of work and can output to every
     plotting device known to man and then some. However, I don't think
     that's the best choice for an interactive display interface. Something
     based on the GNOME canvas seems ideal; scaleable, pannable, and
     postscript output for printing, very desireable qualities for our
     graphs to have.

Other calculators

These are other applications that meet at least some of Valdivia's
criteria.  Most of these can (and more) be found at SAL's list of misc
math apps, which includes calculators and function plotters.

   * bc - An arbatrary-precision calculator. Actually, it's an interpreted
     calculator language. (GNU code)
   * calc - C-style arbitrary precision calculator. (Debian package name:
     apcalc)
   * geg - an equation grapher. Does a nice job, really.
   * genius - Arbatrary precision calculator with GNOME interface.
   * gnucalc - A calculator for emacs roughly based on the HP-28/48. (GNU
     code. Debian package name: calc)
   * samuel - a user-friendly front-end to saml, the Simple Algebraic Math
     Library. Debian's saml package doesn't include samuel though, so I've
     yet to build it and try it out.
   * xldlas - X Lies, Damn Lies, and Statistics. A simple, easy to use
     statistics program, but not useable as a calculator.

Here's a comparison chart. If it is incorrect or is missing relevant
applications which stand out as noteworthy, let me know.

  Name   Notation    Interface                     Graphing
 bc      infix   CLI               no
 calc    infix   CLI               no
 genius  infix   CLI & GUI (GNOME) no
 geg     infix   GUI (GTK+)        yes (That's what it does. That's all it
                                   does.)
 gnucalc RPN     CLI (emacs)       yes (gnuplot)
 samuel  ?       ?                 ?
 xldlas  none    GUI (XForms)      yes (gnuplot)