From: George <jirka_at_5z.com>

Date: Wed, 5 Mar 2003 14:58:31 -0800

Date: Wed, 5 Mar 2003 14:58:31 -0800

To find out what Genius is, skip a few paragraphs down, or go to

http://www.jirka.org/genius.html

Lots of new stuff because I need it for homework. Hmmm, strange that the

other grad students get by without writing their own math package. Maybe I'm

doing something wrong. In any case, we now have very simple minded line

plotting with the function LinePlot (of course you must be running

gnome-genius for this). Also of interest, genius now uses the MPFR library

(comes with gmp, but the redhat build of gmp doesn't enable it, use

--enable-mpfr for that), this speeds up lots of floating point stuff by

orders of magnitude (and is likely more correct then the native genius

implementation which was very simple minded). All kinds of other cool stuff

as well, a bunch of syntax changes too, though I don't think it should effect

you unless you were doing something very weird.

We also have a simple MathML output mode (not as nice as the LaTeX and Troff

modes are though). And in the GUI version you can do

Edit->Copy Answer as LaTeX and such.

On the topic of MPFR. If you use the RPM that I build it "should" work even

if you don't get an updated gmp. I have put up an updated GMP rpm that

enables MPFR. It is really as simple as recompiling gmp with --enable-mpfr.

Genius will work without MPFR just as it did before, but I think in time I

will make it require MPFR to avoid the huge code duplication and the fact

that I have absolutely no interest in debugging something that MPFR does a

LOT better.

In any case, Genius is one of the oldest GNOME projects, it has been

the original GNOME calculator before I got wild ideas about it doing

absolutely everything. It is programmable has a powerful language and

handles many fun features including matlab like support for matrices.

It requires GNOME2 and a recent enough gmp library. However you can

still use the command line version if you prefer non-gui interface.

There is still a lot of work required to make this all nice, mostly it needs

to have the function library improved and verified to be correct and

documentation needs to be written (the complete help system is not yet in

place). Feel free to help out :)

Here are the news in 0.5.3:

Note the syntax changes marked with 'SYNTAX:'

* Very basic line graphing of R->R functions with LinePlot function

* Use MPFR for some floating point functions such as powers, logs, sin/cos

and such. This increases the speed of those operations by about 10 fold

or more. I will start migrating towards MPFR only support in the future.

See www.mpfr.org.

* "a^b mod m" is now done sanely and fast just like the PowerMod function

* Rudimentary MathML output support

* Add Copy Answer As Plain/LaTeX/MathML/Troff menu items

* SYNTAX: A null inside a matrix expansion is treated as an empty matrix. So

[null,1,2] will be expanded as [1,2]

* SYNTAX: Allow rationals and integers as complex numbers though this support is kind of experimental

* Increase some limits on factorizations

* SYNTAX: Add (<expr>)i operator macro which will multiply <expr> by i

* SYNTAX: Negation parsing changed -1^k still parses as (-1)^k but -a^k parses

as -(a^k) (where a is anything but a number

* Rational powers now return integers if possible, and so the

SymbolicSquareRoot and SymbolicNthRoot functions are not neccessary

* Nicer printing of complex numbers

* Printing fixes

* Fractions printed nicely in troff and latex mode

* Fix crash on setting built in parameters if there is an exception

* Add MaximalPrimePowerFactors, PrimeFactors and CombineFactorizations,

RemoveFactor, Gravity (the gravitational constant), EulerConstant,

FermatFactorization, IsGaussInteger, IsPositiveInteger, MillerRabinTest

* Use MillerRabinTest in IsPrime adding a config parameter for this

* Remove SymbolicSquareRoot, SymbolicNthRoot (sqrt and rational powers

is the same thing)

* Add some new aliases for a few functions

* Better EulerPhi implementation

* Fix Factors

* SYNTAX: Fix precedence of : to be lower then that of standard arithmetic

operators

* SYNTAX: Factorial now binds more closely then power

* SYNTAX: Allow more matlab like notation of getting whole rows/columns

(such as foo@(2,:))

* Add an Edit menu with Copy and Paste

* Add "Really want to quit" dialog and allow quitting while calculations are

running

* Allow reading arbitrarily long compiled file record lines

* Some very minor leaks fixed

* Fix interrupting input while not calculating anything (this was a nasty

bug that prevented any further thing to be evaluated)

* Don't allow executing anything if something else is executing, thus causing

a crash.

* A number of minor bugs squashed

* And finally a new small easter egg

http://ftp.gnome.org/pub/GNOME/sources/genius/0.5/

ftp://ftp.5z.com/pub/genius/

http://www.jirka.org/genius.html

(Note that at the 5z.com site there are also some RPMS for RH8.0, Note that

on RH8 the menuitem is in Extras/Other. There is also a GMP RPM for RH8.0

which enabled MPFR and I recommend upgrading to that.)

Have fun,

George

-- George <jirka_at_5z.com> You have the right not to be killed, Murder is a crime! Unless it was done by a policeman or an aristocrat. -- The ClashReceived on Wed Mar 05 2003 - 17:58:37 CST

*
This archive was generated by hypermail 2.2.0
: Sun Apr 17 2011 - 21:00:02 CDT
*