nr@hart.Princeton.EDU (Norman Ramsey) (02/19/91)
The documentation for Pkl.i3 says ``procedures are preserved.'' Is this true for different programs containing some of the same modules, or true only for different invocations of the same program? If true for different programs, how is it done? Since the documentation says methods are restored to the default, I assume methods are so restored even for different programs. Correct? -- Norman Ramsey nr@princeton.edu
gnelson (Greg Nelson) (02/19/91)
The documentation for Pkl.i3 says ``procedures are preserved.'' Is this true for different programs containing some of the same modules, or true only for different invocations of the same program? If true for different programs, how is it done? When Pkl.Write encounters a procedure, it writes the procedure's qualified name and signature into the pickle. The program reading the pickle must contain a procedure with the same qualified name and signature, or else Pkl.Read will raise an exception. Different programs reading the pickle could have different compiled code for the procedure. Methods are treated the same way.
nr@atomic.Princeton.EDU (Norman Ramsey) (02/21/91)
Suppose I have a procedure for saving a single copy of any TEXT: PROCEDURE Unique(s:TEXT):TEXT; such that for all s, s1, s2 Text.Equal(s,Unique(s)); and IF Text.Equal(s1,s2) THEN Unique(s1) = Unique(s2) Is there a way for me to use this procedure with the Pkl interface to guarantee that pickles I write won't contain more than one copy of any TEXT? -- Norman Ramsey nr@princeton.edu