Complicated objects in Maxima



Robert Dodier <robert.dodier at gmail.com> writes:
> Rupert,
>
> Your general approach makes sense to me. A few comments.
>
> About CLOS objects, I don't see any problem with letting them float
> around in Maxima. Makes sense to me to patch DISPLA to print them.
> May as well use native Lisp objects whenever they're useful.
>
> There is an existing structure scheme in Maxima which is essentially a
> reimplementation of similar stuff in Lisp. See defstruct, @, new.
> However that doesn't have any method stuff so it sounds like what you're
> doing is beyond its capabilities. It would probably be a good idea to
> nuke the existing structure implementation and punt directly to Lisp.

Well, I spent a while trying to use it for another (abortive)
project. As far as I could tell it's really similar to CL's
defstruct. Nice enough for structured conses, but not great for things
like generic functions.

> There exists some code for finite groups in maxima/share -- I think it
> is called gf. Maybe you know about that already.

I think that's finite fields (as in Z/p). I didn't know about it and I'm
most impressed by the manual! For other readers, it's in share/contrib/gf.

> Keep up the good work, & keep us posted. If you have a patch for the
> display code already, I am interested to see it.

I have a trivial patch, but I think that Richard has a good point in his
reply to your message. Just because I've only managed to trigger one bit
of code that makes this assumption about atoms doesn't mean all that
much. What do you think is the right thing to do?

Thanks,

Rupert
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 315 bytes
Desc: not available
URL: <http://www.math.utexas.edu/pipermail/maxima/attachments/20120517/a24a627f/attachment.pgp>;