Could you please explain this code segment
Bill McEnaney
bill@rkirkpat.net
Thu Dec 17 20:11:00 GMT 2009
Where's the meaningless(?) code?
> On Thu, 2009-12-17 at 10:40 -0700, Joel Dice wrote:
> > On Thu, 17 Dec 2009, Bob Plantz wrote:
> >
> > >
> > >
> > > I have seen many, many examples, both in industry and in academia,
where
> > > programmers write tricky code claiming it is more efficient. I
claim (a)
> > > efficiency is seldom an issue, and (b) looking at the generated
assembly
> > > language almost always shows it is not more efficient.
> > >
> > > I believe that the best code is that which (a) correctly solves the
> > > problem, and (b) is the most simple-minded in appearance.
> >
> > Perhaps, but the code in question here is not merely obscure - it's
simply
> > meaningless. I think it's a mistake to put such code in the same
category
> > as e.g. an affine transform implemented in inline assembly which has
> > well-defined meaning. The latter may pose a challenge for a
maintenance
> > programmer, but at least it will yield to persistence. In contrast,
> > undefined code is no better than a "todo" comment - you're only
option is
> > to replace it completely with something well-defined based on the
> > documentation and/or context.
> >
>
> I agree that there are situations where obscure code is the best,
> perhaps the only, way to solve the problem. For example, in 1984 I had a
> consulting job where one of my assignments was to write a logarithm
> function for an embedded MC68000 environment. The only way I could get
> the required speed and accuracy was to use double-precision integer
> arithmetic. I wrote it in assembly language and used several "magic
> numbers" to keep intermediate values in range while maximizing
> arithmetic significance. My comments took more space in the listing than
> the actual code. To their credit, the programming team asked for even
> more documentation during my walk-through of my code.
>
> These situations are uncommon -- and lots of fun to solve!
>
> The most common uses of obscure code that I've seen are programmers
> showing off their "understanding" of the language being used. I believe
> that a good programmer does not ask what his/her code does, but rather
> explains it -- either through simple, easy-to-read code, or with
> thorough commenting. I use the term "good" to mean relative to the
> programmer's skill level.
>
> --Bob
>
>
>
________________________________________________________________
Please visit a saintly hero:
http://www.jakemoore.org
More information about the Gcc-help
mailing list