The identifier argument is a symbol or string which identifies the newly-created copy. If this argument is nil, the copy is given a unique system-generated identifier.
If the add-suffix-p argument is t, identifier is suffixed with a unique integer. If identifier is nil, this is a no-op.
The context argument is the context in which the copy will be interned. This defaults to the current context.
If identifier is the same as the identifier of an existing instance, and add-suffix-p is nil, then Loom asks whether the user really wants to overwrite the existing instance, causing the older instance to be partially uninterned.
(copy-instance (fi Joe)) ==> |I|PERSON-34 (copy-instance (fi Joe) :identifier "Moe" :context cxt) ==> |I|MOE (copy-instance (fi Moe) :identifier 'Moe :add-suffix-p t) ==> |I|MOE-35