[Date Prev][Date Next][Thread Prev][Thread Next][Date index][Thread index]
Re: RE: st: RE: About data transformation
In an earlier post I pointed out that Patrick Joly's <Joly.Patrick@ic.gc.ca>
trick to create a Stata 6 format dataset from Stata 8,
> version 7.0: save filename6, old
would not work.
It won't work, and that is the thing I wanted to make clear.
I then went on to give a pretty poor explanation of why this need not work for
backward compatibility and coined the confusing term "forward compatibility"
that did not help at all.
What backward compatibility means in Stata is that old programs continue to
run, not that they continue to run in exactly the same way. We clearly do not
allow a bug in Stata 4 to be perpetuated into Stata 8. If the bug were fixed
in Stata 6, you could not get it back in Stata 8 by prefixing the command with
-version 4:-. A little less obvious, prefixing an ado-file with -version 5:-
does not mean that the estimation commands in the file will not leave behind
their estimation results in e(). If they did not, then any post-estimation
commands written after version 5, would not work on results produced by the
What the -version X- command primarily provides is recognition of Stata syntax
as it existed in -version X-, parts of which may no longer be supported or
recognized. What it does not do is turn back the clock completely so that
Stata acts exactly like it in version X.
Saving data in an old format under version control is not required to allow
old programs to run under a new Stata; in fact, would actually make the old
programs less useful. Let's say we have a program, saveit.ado, that sorts a
dataset and then saves the dataset. Let's further assume that we wrote
-saveit- many years ago and put the statement -version 2- at the top of the
program. If we are now running Stata 8 and type -saveit myfile-, our file
will be saved in version 8 format, not version 2. (This is probably good,
because a file we -use-ed under Stata 8 may well have long variable names or
labels.) That the file is saved in Stata 8 format is not a problem, because
we are running Stata 8 and it can will be able to restore that dataset. If we
were running Stata 7, the same story holds, only now -saveit- would be saving
Stata 7 format datasets.
* For searches and help try: