Deepcopy

Help
Cerin
2010-08-31
2013-04-25
  • Cerin
    Cerin
    2010-08-31

    How do you copy a Clips Environment object? I'm trying to iterate over various Environment iterations, and at each stage I need to copy the current Environment before modifying it, but deepcopy gives me the error "ClipsError: M03: cannot pickle debug status".

     
  • Indeed, the "deep copy" operation involves saving the state of a particular object, and since it's impossible to directly access CLIPS memory without breaking it, it's also not possible to save and restore it in a safe way. You can use Save() and Load() to store the current constructs to a file (and not a file-like object) and to retrieve it, but there is no other way to retrieve the machine state in CLIPS version 6.23 (and older).

    F.