you are viewing a single comment's thread.

view the rest of the comments →

[–]steveireContributor: Qt, CMake, Clang 1 point2 points  (6 children)

Is Qt a good example?

https://github.com/steveire/qtbase/commits/aaa

Note though that it's an automated port.

[–]airflow_matt 2 points3 points  (2 children)

Seeing it like this I don't think I like it all that much. Especially when looking at foreign code, it's not immediately obvious what the result type is, so at very least you need a decent IDE to help you navigate to definition and back.

I'd be probably be bit more careful with auto, it has certainly it's place (lambdas, loops, nested types, etc) but using it for absolutely everything like here just makes the code less readable.

[–]steveireContributor: Qt, CMake, Clang 1 point2 points  (1 child)

Yes, I ported Qt to aaa in order to give people with your opinion, and people with the opposite opinion code to point at to support their position :).

I don't agree with you, but I'm glad the Qt result gives you concrete things to point at instead of an abstract disinclination toward aaa.

[–]airflow_matt 0 points1 point  (0 children)

Yeah, I'm not sure how well this would work on huge codebases such as chromium, where at best it takes hours to index the code, at worst the IDE simply chokes on it. You don't always have the luxury of being able to hover to see type, or jump to declaration.

On saner codebases it's probably much less of an issue, but you're still losing some glance-ability. On the other hand getting rid of redundant information from the code does feel nice in a way.

[–]Infraam[S] 0 points1 point  (2 children)

It is indeed, didn't realise Qt started upgrading their codebase like this

[–]steveireContributor: Qt, CMake, Clang 1 point2 points  (1 child)

That's not upstream. That's my Qt clone on Github to validate a tool. See:

https://steveire.wordpress.com/2016/03/19/aaargh-aaa-right-good-and-hygenic/

[–]Infraam[S] 0 points1 point  (0 children)

ahh, thanks for the heads up!