[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: gEDA-user: merge multi symbol components



On Jul 22, 2009, at 1:45 PM, der Mouse wrote:

>> I'm all in favor of this.  But the right way to do that with a
>> toolkit is usually to wrap the tools with high level scripts.  Adding
>> features to the tools themselves is the "cat -v" approach, the road
>> to bloat and inflexibility.
>
> As much as I agree with the basic point, I think cat -v is not a good
> poster child for it.
>
> To quote http://harmful.cat-v.org/cat-v/, mentioned upthread,
>
> 	cat isn't for printing files with line numbers, it isn't for
> 	compressing multiple blank lines, it's not for looking at
> 	non-printing ASCII characters, it's for concatenating files.
>
> Quite aside from the "who died and made _you_ god of what cat is for?"
> question (which actually carries comparatively little force in Rob
> Pike's case :), this is just silly.  Presumably this means Rob Pike
> (and, I gather, you) would prefer to have a separate program for  
> adding
> line numbers (let's call it cat-n, to avoid the need to think of a
> better name now), one for compressing blank lines (cat-s), and one for
> visiblifying nonprinting characters (cat-v).  These will need to
> duplicate (almost?) all of cat's functionality,

Well, the only special functionality cat has is concatenating input  
files. And none of those other things need to concatenate files. So  
Pike is, in fact, not asking for duplication of functionality. He's  
asking for orthogonal design.

> with additional code
> for their particular functionality.
>   How is this better than sharing
> that common code by making them flags to cat?  What flexibility is  
> lost
> by turning cat-n, cat-s, and cat-v into options to cat?  What gain
> would splitting them out into separate programs bring?

Conceptual simplicity. Orthogonal design is a good thing. "cat -v"  
is, as you point out, a trivial violation of the principle, but I  
suppose Pike chose it because it's an easy case to explain. And in  
more complex cases, entanglement *does* take away flexibility.

John Doty              Noqsi Aerospace, Ltd.
http://www.noqsi.com/
jpd@xxxxxxxxx




_______________________________________________
geda-user mailing list
geda-user@xxxxxxxxxxxxxx
http://www.seul.org/cgi-bin/mailman/listinfo/geda-user