> Realistically, we don't have a chance of pickling interface objects when we
> don't have any deeper understanding of the object in the interfaced system.
> Unless the interfaced system supports pickling natively, which few do.
> So my suggestion would be to define x.dumps() as x.sage().dumps(), that is,
> just pickle the value in Sage. Doesn't work for the singular(3) example
> since the conversion Singular integers->Sage integers hasn't been
> implemented but at least you get the error immediately and not later when
> you try to load the object.
Sounds right. Better have an exception now than lost data.
Is there anybody around who would know how to change that? I don't
feel much at home around pickling and interfaces ^^;