An attempt at solving KControl's usability problems..

George Staikos staikos at
Mon Jan 26 06:13:07 GMT 2004

On Monday 26 January 2004 00:49, Maks Orlovich wrote:
> On Monday 26 January 2004 12:32 am, George Staikos wrote:
> >   Some notes:
> > > 4) Usually more efficient and faster code.
> >
> >    It is not possible for a generator to write more efficient and faster
> > code than a human, in particular since a human wrote the generator.
> > Perhaps inexperienced or lazy programmers write less efficient code, but
> > this is not a valid argument.
> Sure it is, if you extend the concept of a  generator to include an
> optimizing compiler ;-) A program can do a lot more work than a human can
> w/o making a mistake, and do so w/o code/input uglification; it can also
> solve difficult optimization (numeric sense) problems w/far more inputs
> than can be done by hand. There are some nice examples in some advanced
> compiler textbooks of 4-line programs that are automatically expanded into
> 3-page ones with dozens of loops with bizzare shapes to get the peak
> performance. Having said that, this is a far cry from 'usually', and takes
> an insane amount of work. And, disclaimer: I didn't read any portion of the
> thread that preceeded your message ;-)

   Well if I made the optimizing compiler, then I think I qualify as having 
generated the code myself, so that means that the compiler cannot have 
written faster and more efficient code than I did.  Maybe equivalent, not 
better.  I can always write a better optimizing compiler too (unless I wrote 
the perfect compiler already, in which case I would not be writing email to 
kde-core-devel but living on an island right now :-)).

   I like to think of this as a bit of a yacc/flex analogy.  We all know that 
it's quite possible to write faster, better parsers and scanners by hand.  
Sure it's easier to use yacc and flex and the code is also easier to 
maintain, which is why we still often use them, but that doesn't make their 
output better.

George Staikos
KDE Developer
Staikos Computing Services Inc.

More information about the kde-core-devel mailing list