"Jonathan S. Shapiro" wrote:
> After some thought, though, I concluded that this view wasn't ideal. The
> notions of "text" and "binary" are useful human conventions (and one we
> should support), but for the purposes of the CM system what we are really
> trying to do is specify the input transformer rule and the output
> transformer rule. That is, we are specifying a filter program. In the limit,
> I want to be able to write filter programs in Scheme and specify an
> arbitrary filter. This divorces keyword expansion from any particular CM
> system policy about keywords, for example. Under this model, if you change
> the transformer rule, you really are changing the content in the repository
> (even if the bytes are accidentally the same), so a new checkin is
> appropriate.
I/O transformers are cool, particularly since, in general, a binary file is hard to produce minimal deltas for, but an appropriate transformation may well render it diffable, as well as potentially having a useful side-effect of making it human-readable.
Cheers,
Ben.
-- http://www.apache-ssl.org/ben.html