# Re: [genius-list] Genius Future:

From: Squeak <squeak_at_xirr.com>
Date: Wed, 8 Sep 1999 00:12:03 -0400 (EDT)

On Wed, 8 Sep 1999 njh_at_cs.monash.edu.au wrote:

> On Tue, 7 Sep 1999, Squeak wrote:

> I was aiming for a similar level of ability to mathematica, at least as

Also I think this goal is very lofty, definately should look into open
source solutions already available, andtake as much from their experience
as we can. As late as '95 mathematica did some integrals incorrectly. They
have worked very hard to get their product as good as it is, AND got
paid :) Does "yacas" or "rlab" do this sort of thing?

> > [ characteristic functions ]
> Yup, that's a good idea, it leaves the problem of defining the universe
> alone(i.e. ~chiA is well-defined) but it still doesn't give a good
> internal representation. Common internal reps I've looked at are
> bit-set(one bit per element), Linear array(probably the best solution -
> not complex), tree(The most efficient - there are log/linearithmic time
> algos for many set ops).

On the subject of complexity, sparse matricies might better be written
as hash's (glib hash seems fine). Then sets would be pretty easy
to extend to hash's whose values were either 1 or 0. To demonstrate
need: "a@(10000,10000)=4" hangs genius, and "a=[0] ; a@(100,100)=4 ;
a@(10000,10000)=5" gets a fatal memory error.

Partial orders would definately be better as a tree. I'm thinking the problem
is so low level multiple solutions might be neccessary?

What is an element by the way? Integers, real numbers, complex numbers,
sets there of? You might want to check out ghc (the glorious glasgow
haskell compiler) for some ideas as well. SuSe linux came with some
finite element software.

** Important question: is the source available? cvs or something?

If i could see what's being written (even if it doesnt work) I would have
a clue about which of my ideas to put into code. Things on the todo list
(with more notes than code) Polynomial rings, quotient spaces, finite
fields. Inteval arithmetic. Recursion, infinite (really infinite in the
greek sense) sequences, basic algebraic stuff (variables are treated
like unknown quantities and kept throughout a calculation, first step
imho). Functionals, curryable functions, functions as transformation
rules. Quarternions, matricies over skew fields. And of course: a couple
graphing type extensions that are total hack. As it is right now, I'm just
slowly writing my own (GPL) sub-genius (to learn compiler design I guess)
so most of the junk I've written either has problems or is already done
by genius (hence its just a subgenius).

Glad to see you're coding crazy stuff :)
Received on Tue Sep 07 1999 - 20:48:16 CDT

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