[Clam-devel] PATCH: new File class heirarchy
Zach Welch
zach-clam-devel at splitstring.com
Tue Apr 10 15:50:05 PDT 2007
On Tuesday 10 April 2007 14:28, Xavier Amatriain wrote:
> Thanks Zach, I think your patch points to an underlying question that is
> difficult to answer right away:
>
> Do we want the File hierarchy to just depend on the format and not the
> content being stored? Or, like you propose, do we want it to depend on
> what's being Stored and not the format?
Does this need to be answered before this patch is committed? Why not accept
the patch and let me continue to evolve things? We can change the design
later to meet future requirements or expections, but it gives immediate wins
in NetworkEditor (or any program that wants to write generic functions for
prompting the user to select audio input or output files).
I considered additional changes that would have provided some answers for your
questions, but I did not implement them because I recognize that they can be
added later. Given that I can incrementally address issues through future
patches, I would like to focus on reasons why it should rejected outright in
its original form. I believe that I have addressed the immediate objections.
David said on IRC that, in general, the word "eventually" was banned from
design discussions, since it can cause more complexity that it eliminates.
If things need to be evolved because of changing requirements, the code can
change when the specific eventuallity arises. In this way, I do not want to
get caught up in abstract discussions about what might be best in the future;
I want to focus on concrete benefits or problems from the present changes.
My next steps might be to address the in-tree SDIFFile and MIDIFile classes,
bringing further abstraction through refactoring. I can begin to rewrite my
EmbeddedNetworkFile and NeuralNetworkFile classes, evolving the best design
from actual use cases. But my patch brings good things today, and provides a
foundation for work that I have in progress. Returning to the key question:
what is wrong with my patch that prevents its immediate addition to the tree?
Cheers,
Zach
More information about the clam-devel
mailing list