|
On 12/03/2010 10:04 AM, Andreas Draeger wrote:
> Hello everybody,
>
>>>> * we cannot use the same ASTNode in several objects as it is not cloned.
>>>> In general, the values are not copied in java when passed to a method.
>>> I don't think it is a good idea to clone everything that is passed to a
>>> set method. What if people want to set an object such as an ASTNode as a
>>> child for some MathContainer and then continue working and manipulating
>>> the same data structure. What will happen is that inconsistencies occur
>>> and people won't understand why their changes get lost. If people want
>>> to clone an object, they will call the clone method.
>>>
>> I don't want to change anything there. It was on the section of things
>> we need to document.
>> In libsbml, the objects are cloned, in jsbml not, people need to know
>> that in case they re-use the same object trusting
>> that it will not modify the object they have just added to the model. In
>> libsbml it is possible, I think, to create one species, add it to the model,
>> then change the id, add it to the model and then you have two different
>> objects in your model element.
> What is meant with "I don't want to change anything there"? As far as I
> know, we don't clone things at the moment. And I am not sure if we have
> to do this in the libSBML way. To me it is not logical to clone things
> when adding them to some element. We should ask the community what
> people want. I would like to stick with not cloning by default. It is
> also unnecessarily expensive.
:-) To be clear, I am totally agreeing with you, since the beginning.
We should not clone anything, it is not java-like.
> I can add this as one additional
> difference between both libraries in the TeX document.
>
Yess, that was I meant in the first place, that we have to add it in the
documentation as
a difference between both libraries in case there is some fancy code out
there making use of the libsbml way.
Thanks,
Nico
____________________________________________________________
To manage your jsbml-development list subscription, visit
https://utils.its.caltech.edu/mailman/listinfo/jsbml-development
For a web interface to the jsbml-development mailing list, visit
http://sbml.org/Forums/
For questions or feedback about the jsbml-development list,
contact sbml-team@caltech.edu
|