The construct is wrong:

+        construct l == ref l

That causes shared structure, and 'ref copy l' will not work either.
This problem is coupled with the other thread "copy of AssociationList".

Namely, we should implement 'deep copy' of List of Record and
use that in 'construct' and 'copy':

   deepcopy(x : List Record(...)) : List Record(...) ==
       y := empty()
       while not empty? x repeat
           y := concat(copy first x, y)
           x := rest x
       reverse! y

    construct l == ref deepcopy l
    copy l == ref deepcopy deref l

BTW, I think we can use List Record instead of Reference List Record
as Rep.

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to