[kepler-dev] Small change in the Command Line actor

Edward A Lee eal at eecs.berkeley.edu
Sat Sep 4 14:46:49 PDT 2004


At 07:15 AM 9/3/2004 -0700, Bertram Ludaescher wrote:
>Thanks for the improvement. Of course your comment about updating
>raises an important issue:
>
>How to be backward compatible as much as possible while at the same
>time minimizing the proliferation of stale or deprecated code (the
>"old stuff").
>
>It seems that sometimes creating a new version of an actor is a good
>idea, while keeping the old version around for backward compatibility.
>
>The old actor would be flagged as such ("deprecated -- use XYZ
>instead") so that new workflows no longer use it...
>
>Keeping track of all the versions seems like an interesting challenge
>in its own respect.
>
>I wonder how Ptolemy folks have handled this over the long duration of
>their project (possibly including previous Ptolemy Classic etc)


The package ptolemy.moml.filter contains a suite a classes
supporting backward compatibility.  For things like changing
a parameter from StringAttribute to StringParameter, we
would put an entry in the PropertyClassChanges class definition
to automatically handle older models...

Of course, as the list of filters grows, MoML parsing will get
slower.  For more major changes to an actor, what we do is leave
the old actor in the tree so that models that use it will work,
but remove it from the Vergil libraries so that new models don't
use it.  Then a new actor (with a new name) is put in the library.

Edward



------------
Edward A. Lee, Professor
518 Cory Hall, UC Berkeley, Berkeley, CA 94720
phone: 510-642-0455, fax: 510-642-2739
eal at eecs.Berkeley.EDU, http://ptolemy.eecs.berkeley.edu/~eal




More information about the Kepler-dev mailing list