Catch more with Dutchmans than with others

[[Usenet is dead, now Email and Mailinglist are dying, in Web 2.0 times Blog is the way to communicate/discuss. I am just curious how Akregator will learn to display these threads, given that there can be multiple ancestors :)]]

There are currently some classes in Okteta used for rendering which are named the same (*ColumnRenderer), one of each pair living in a namespace (KHEUI), the other in the standard one. Product of lazyness and temporary solutions (printing needs a renderer, the one for the screen is not yet usable, so until it is, let’s just copy,paste&adapt it).

Without any dutchman:
It worked for me, as the code depending on the renderer never sees both of them.

Here comes dutchman #1:
Unless you compile KDE with enable-final turned on, which puts all source files into a single big one. I never have done, but dutchman #1: So Tom Albers sent in a patch to fix this. E.g. it added the prefixed double-colons to remove ambiguity. With lazyness still turned on, I just had him apply the patch as is, because while not too happy with the look I know^Whope the time of the doubled classes is limited (KDE 4.2). Also my knowledge regarding namespace stuff is, well, improveable currently.

Now dutchman #2 comes in:
On his quest to have the traditional targets of KDE, namely unixoid platforms, not being left aside due to some hyped new targets like OSX or Windows, dutchman #2 puts the KDE code on the plate of quite some more compilers, some I have even never heard of. And a few of them seem to have a different taste about what to swallow and what not, compared to all the compilers that have had it one their plate before. Especially regarding one of the solutions of the other dutchman, namely the prefixed double-colons. So Adriaan de Groot, with his brain’s parser broken so he can not detect the maintainer’s email address or his bookmark to bugs.kde.org, stays with his opened blog editor window and throws his findings into the sea of the world wide web, hoping one of the bottle copies will find the person addressed. Lucky he is, it did πŸ˜‰
So lazyness is no more, will just rename half of the classes and hopefully have all the compilers now eat all from the plate. So the weather will be nice (central europe mothers tell you this relation). Because I fear dutchmans are more used to play soccer in rain, so they will have a little more advantage against the germans in the final of the EM (European championship about dealing with a single ball and two nets the European style). I do not want to be guilty of that, because I want the german team to have a little chance against them. If only for a goal of honor. As to be seen yesterday, they at least have chances to improve, too. A lot of chances… Or they will have to catch a lot with dutchmans, too.

Advertisements

6 thoughts on “Catch more with Dutchmans than with others

  1. Yes, usenet is dead since the alt. hierarchy was banned from some ISPs. It just won’t be the same without alt.fan.roy.orbison, right?

    I can understand that being stuck between two dutchmen is uncomfortable, especially if they are pushing in different directions. However, the theory is that in general we move towards higher quality code and better applications, in spite of the sometimes random movement in the code base.

  2. You seem to have misunderstood the point of my blog entry. It’s not about Okteta, only there’s code in Okteta that illustrates the problem.

    We have three compilers (gcc3, gcc4, SS12) and two of the three report an error, and one accepts the code. Clearly there must be at *least* one broken compiler involved. Then there is the theoretical compiler, the C++ standard which sometimes operates in our brains. And it says that that one line of code in Okteta cannot be valid C++.

    So, since my blog tries to highlight interesting and peculiar C++ code in the KDE codebase — and flag compiler errors at the same time — you get honorable mention. You don’t have to get snippy about missing out on an email because you’re the maintainer.

    A low impact solution is to define the function where it’s declared instead of doing the definition outside of the class. The compiler will inline anyway, you can still get member function pointers if needed, and it saves us a lot of grief. Well, those of us that are not interested in compiler bugs anyway.

  3. Hi Adriaan, I have to be snippy at the fact that I hear people (here you and also Pau) talking about problems with my code, without telling me directly, so I only get to know it by accident. And I guess everyone else would, too πŸ™‚
    And I wonder if these kind of mentionings are really “honorable”, at least I know a lot of other things I would feel more honored by than unparsable code of mine πŸ˜‰

    Other than that, no bad feelings here. E.g. see how many commits I did to Okteta based on ebn reports? And I took some time from noon to commit a patch that hopefully gets things going for you again, like you asked for. Please tell me, if it does. Email preferred to blog entry. Well, if you want to honor my quick reaction in the process, blog is okay, too. πŸ˜‰

    Now, on C++ theories, I do not see that Tom’s change was against C++ standards, AFAIK.
    Regarding inline functions, I like the class declarations as clean and readable as possible, so the impact for me is higher than one might guess. Also, with the inline function definitions separate to the declaration the process of making functions inline or not is just a matter of cut, paste & modifying the inline tag. I feel to do this a lot, so this approach could save me time.

  4. I found is really really hard to find out what the topics you actually wanted to talk about were, though all the cynisism and not-too-nice-references.

    Maybe you can try to be less funny and just try to be nice instead? It would certainly make the point better πŸ˜‰

  5. Friedrich, the reason I didn’t tell you about the problem is I thought it was a problem with VC++ and I was so busy I didn’t have time to figure out where the problem actually was. In fact, the error VC++ showed quite ressembled an old bug in VC++ πŸ™‚

  6. @Thomas: I was in the mood to be funny about something. My blog, my life, my style. Just get over it. And do not be afraid, I am nice by nature πŸ™‚

    @Pau: Alright πŸ™‚ Now I am curious if the changes I made today to the code mentioned by Ade improved things for you, I hope it did.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s