On Mon, Jul 24, 2017 at 10:28:06AM +0100, Richard Sandiford wrote:
> > So what does it change in the interfaces we use?  I couldn't find an
> > update of documentation, maybe I missed it (it's a huge series :-) )
> > An overview of the new interfaces (and how they are used) would help.
> 
> You didn't miss one.  I was hoping the function comments would be enough,
> but on reflection, they're not.  I've attached a patch for rtl.texi below.

Thanks!

> > From what I can tell so far it makes things much harder to read.
> > Perhaps that is just because this is all new.
> 
> Which parts specifically?  E.g. is it mostly the is_a <T> (x, &y) changes?
> Or the as_a <T> (x) changes too?  Do you think the FOR_EACH_* iterators
> also make things harder to read?  Or is machine_mode->scalar_int_mode
> itself a problem?

All the  as_a <T> (x)  etc. looks like cuneiform to me (not just in your
patch); and I cannot read cuneiform :-)

One day I might understand why we need all this C++ inverted syntax,
needless abstraction, needless generalisation, data hiding and everything
else hiding.  Until then, I rant.  Sorry.

The main purpose of abstraction is to make code easier to understand and
to write and change, but with C++ it usually makes it harder it seems :-(


Segher

Reply via email to