A trick (dirty ?) which would not slow down much performance of the polymorphic equal would be to detect cyclic structure using the bit used by the GC (the equallity will not trigger GC ?), and when you detect a cycle, you either raise an exception or use physical equality depending on the value of a global variable. -- Christophe Raffalli Université de Savoie Batiment Le Chablais, bureau 21 73376 Le Bourget-du-Lac Cedex tél: (33) 4 79 75 81 03 fax: (33) 4 79 75 87 42 mail: Christophe.Raffalli@univ-savoie.fr www: http://www.lama.univ-savoie.fr/~RAFFALLI --------------------------------------------- IMPORTANT: this mail is signed using PGP/MIME At least Enigmail/Mozilla, mutt or evolution can check this signature. The public key is stored on www.keyserver.net ---------------------------------------------