#6670: Port group algebras to the current coercion system
-----------------------------------+----------------------------------------
   Reporter:  mraum                |       Owner:  mraum     
       Type:  enhancement          |      Status:  needs_work
   Priority:  minor                |   Milestone:  sage-4.5  
  Component:  algebra              |    Keywords:            
     Author:  Martin Raum          |    Upstream:  N/A       
   Reviewer:                       |      Merged:            
Work_issues:  unpickling problems  |  
-----------------------------------+----------------------------------------
Changes (by davidloeffler):

  * work_issues:  => unpickling problems


Comment:

 I spent quite a while rebasing this to 4.5.alpha1. I will upload the
 rebased patch; but I was disappointed to find that there is still a
 serious issue that needs to be addressed.

 The problem is that unpickling elements of group algebras created using
 the old code fails; you can't replace a class name with a function name
 and expect it to unpickle seamlessly. It ends up expecting
 {{{sage.algebras.group_algebra.GroupAlgebraElement}}} to be a class which
 can just be filled in with the pickled {{{__dict__}}} values, not a
 callable. This is what I get if I pickle a group algebra element without
 the patch, apply the patch and try to unpickle:
 {{{
 sage: load("/home/masiao/gpalg.sobj")
 ---------------------------------------------------------------------------
 UnpicklingError                           Traceback (most recent call
 last)

 /storage/masiao/sage-4.5.alpha1/devel/sage-
 reviewing/sage/algebras/<ipython console> in <module>()

 /storage/masiao/sage-4.5.alpha1/local/lib/python2.6/site-
 packages/sage/structure/sage_object.so in sage.structure.sage_object.load
 (sage/structure/sage_object.c:7577)()

 /storage/masiao/sage-4.5.alpha1/local/lib/python2.6/site-
 packages/sage/structure/sage_object.so in sage.structure.sage_object.loads
 (sage/structure/sage_object.c:9175)()

 UnpicklingError: NEWOBJ class argument isn't a type object
 }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6670#comment:10>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to