Moi

thanks. All very good to know, especially that I had the string klass in 
the wrong category.

>Non immediate values are just plain obejcts.  So their ID behave like
>usual (non builtin) objects.
>  
>
Very nice. I guess the rest of my question was a bit convoluted, but simply:

Can I just call rb_define_attr(klass, name, read, write) to define 
"__purple__id" for all classes except immediate types ?
What call can I use to find if "__purple__id" is already defined ?
What call do I use to set the "__purple__id" on an object, I don't find 
the appropriate if I know the function (even id) and know it takes only 
one argument ?

Thanks
    Torsten