June 26, 2006
Why mention Bruno is a student? What difference does it make?

I don't know a lot about the issues around overriding protection and would be interested to hear why you think Bruno is wrong in his comments because what he has said so far (you've implied he's ignoring some issues, what issues?) makes sense to me.

I get the impression you're not interested in discussing it, which is fine, can someone else illuminate it for me?

Regan
June 26, 2006
Regan Heath wrote:
> Why mention Bruno is a student? What difference does it make?
> 
> I don't know a lot about the issues around overriding protection and would be interested to hear why you think Bruno is wrong in his comments because what he has said so far (you've implied he's ignoring some issues, what issues?) makes sense to me.
> 
> I get the impression you're not interested in discussing it, which is fine, can someone else illuminate it for me?
> 
> Regan


Kris actually voiced some of the feelings I've been experiencing about Bruno's posts.  It's hard to articulate that kind of "feeling." But for the most part, I feel he's accurate in his complaint (although he sounds a little exasperated).

Bruno does come across extremely confident, and while "ego" is a strong word,  Bruno has given us very little indication that his posts are an expression of anything other than that.  So that leaves us thinking one of two things: either he really knows what he's talking about and likes bombarding the community with statements of absolute truth, despite the fact that nobody really knows why he thinks he knows (like maybe many long years of research, experience, and study?) ; or he's a 21 year old college kid who is quite bright, but has a penchant for talking about what's right and wrong about everything as if his is the final word on the matter.

Either way, there's no common courtesy or deference to the experience of  others, many of whom may have a whole lot more years behind them in the computer industry. There's no gentle discussion. There's just strident confidence about how things are with little justification for it or evidence as to why. This world is full of gray areas and full of systems that try to make an organized approach to understanding and working in them, but that doesn't make any one system perfect.  As time goes on, we find that out.

Regan, It's less about his being a student, which as you say really makes no difference, and more about how he voices his opinions with very little reason for us to know why his word should be law on matters.  The student thing comes up because that's about the only portrait Bruno has bothered to paint for us (his signature).  And I'm afraid that portrait is rather lacking in any substance.

Regan, you've been in the same spot as Bruno, I think, and perhaps empathize with him a little, especially in relation to dealing with Kris :).  But you've doggedly persisted through, developed D code, contributed to the community in significant ways and thus earned that amount of respect you now deserve.  But there were times when people were annoyed with your innate ability to start long-winded debates on things. Some of your opinions came across the same way.

When youth speak with so such confidence, it tends to come across as abrasive, annoying, and egotistical, no matter what the original intention may be.

I'm giving Bruno the benefit of the doubt.  He probably just enjoys D, this community, and the language related discussions so much, that he has trouble holding back.  That's nice... but there are consequences to any action lacking self-control. :)

-JJR
June 27, 2006
On Mon, 26 Jun 2006 16:27:08 -0700, John Reimer <terminal.node@gmail.com> wrote:
> Regan Heath wrote:
>> Why mention Bruno is a student? What difference does it make?
>>  I don't know a lot about the issues around overriding protection and would be interested to hear why you think Bruno is wrong in his comments because what he has said so far (you've implied he's ignoring some issues, what issues?) makes sense to me.
>>  I get the impression you're not interested in discussing it, which is fine, can someone else illuminate it for me?
>>  Regan
>
>
> Kris actually voiced some of the feelings I've been experiencing about Bruno's posts.  It's hard to articulate that kind of "feeling." But for the most part, I feel he's accurate in his complaint (although he sounds a little exasperated).
>
> Bruno does come across extremely confident, and while "ego" is a strong word,  Bruno has given us very little indication that his posts are an expression of anything other than that.  So that leaves us thinking one of two things: either he really knows what he's talking about and likes bombarding the community with statements of absolute truth, despite the fact that nobody really knows why he thinks he knows (like maybe many long years of research, experience, and study?) ; or he's a 21 year old college kid who is quite bright, but has a penchant for talking about what's right and wrong about everything as if his is the final word on the matter.
>
> Either way, there's no common courtesy or deference to the experience of   others, many of whom may have a whole lot more years behind them in the computer industry. There's no gentle discussion. There's just strident confidence about how things are with little justification for it or evidence as to why. This world is full of gray areas and full of systems that try to make an organized approach to understanding and working in them, but that doesn't make any one system perfect.  As time goes on, we find that out.
>
> Regan, It's less about his being a student, which as you say really makes no difference, and more about how he voices his opinions with very little reason for us to know why his word should be law on matters.  The student thing comes up because that's about the only portrait Bruno has bothered to paint for us (his signature).  And I'm afraid that portrait is rather lacking in any substance.
>
> Regan, you've been in the same spot as Bruno, I think, and perhaps empathize with him a little, especially in relation to dealing with Kris :).  But you've doggedly persisted through, developed D code, contributed to the community in significant ways and thus earned that amount of respect you now deserve.  But there were times when people were annoyed with your innate ability to start long-winded debates on things. Some of your opinions came across the same way.
>
> When youth speak with so such confidence, it tends to come across as abrasive, annoying, and egotistical, no matter what the original intention may be.
>
> I'm giving Bruno the benefit of the doubt.  He probably just enjoys D, this community, and the language related discussions so much, that he has trouble holding back.  That's nice... but there are consequences to any action lacking self-control. :)

I tend to agree with a lot (perhaps all) or what you've said above.

I do empathise with Bruno, he's obviously confident in his own knowledge and opinion, as I think many people are. He's also blunt and direct in expressing that opinion, as I can be. I have been in his position and what I needed in that position was discussion on the topic to either cement my ideas/thoughts or to discover new ideas (like those that Kris alluded to here) which would later change my opinion.

I've learnt a lot from this newsgroup, despite having 7 odd years of programming experience (which isnt a lot compared to some here I know). I don't think anyone, regardless of experience, should stop learning, and this newsgroup is a very good place to learn.

So, all I'm asking is for someone, who knows what Kris was alluding to, to explain it to me cos I can't see anything wrong (factually) with what Bruno has said so far. :)

Regan
June 27, 2006
John Reimer escribió:
> Regan Heath wrote:
>> Why mention Bruno is a student? What difference does it make?
>>
>> I don't know a lot about the issues around overriding protection and would be interested to hear why you think Bruno is wrong in his comments because what he has said so far (you've implied he's ignoring some issues, what issues?) makes sense to me.
>>
>> I get the impression you're not interested in discussing it, which is fine, can someone else illuminate it for me?
>>
>> Regan
> 
> 
> Kris actually voiced some of the feelings I've been experiencing about Bruno's posts.  It's hard to articulate that kind of "feeling." But for the most part, I feel he's accurate in his complaint (although he sounds a little exasperated).
> 
> Bruno does come across extremely confident, and while "ego" is a strong word,  Bruno has given us very little indication that his posts are an expression of anything other than that.  So that leaves us thinking one of two things: either he really knows what he's talking about and likes bombarding the community with statements of absolute truth, despite the fact that nobody really knows why he thinks he knows (like maybe many long years of research, experience, and study?) ; or he's a 21 year old college kid who is quite bright, but has a penchant for talking about what's right and wrong about everything as if his is the final word on the matter.
> 
> Either way, there's no common courtesy or deference to the experience of  others, many of whom may have a whole lot more years behind them in the computer industry. There's no gentle discussion. There's just strident confidence about how things are with little justification for it or evidence as to why. This world is full of gray areas and full of systems that try to make an organized approach to understanding and working in them, but that doesn't make any one system perfect.  As time goes on, we find that out.
> 
> Regan, It's less about his being a student, which as you say really makes no difference, and more about how he voices his opinions with very little reason for us to know why his word should be law on matters.  The student thing comes up because that's about the only portrait Bruno has bothered to paint for us (his signature).  And I'm afraid that portrait is rather lacking in any substance.
> 
> Regan, you've been in the same spot as Bruno, I think, and perhaps empathize with him a little, especially in relation to dealing with Kris :).  But you've doggedly persisted through, developed D code, contributed to the community in significant ways and thus earned that amount of respect you now deserve.  But there were times when people were annoyed with your innate ability to start long-winded debates on things. Some of your opinions came across the same way.
> 
> When youth speak with so such confidence, it tends to come across as abrasive, annoying, and egotistical, no matter what the original intention may be.
> 
> I'm giving Bruno the benefit of the doubt.  He probably just enjoys D, this community, and the language related discussions so much, that he has trouble holding back.  That's nice... but there are consequences to any action lacking self-control. :)
> 
> -JJR

I think Kris overreacted. Maybe he was right, but I don't think that was the right way to express it. Experience is a very valuable thing, granted, but maybe Bruno has experience and he just hasn't made it public. But whether that's the case or not, I agree with Regan in that it shouldn't matter that much. And if you, Kris, think Bruno needs a bit of "enlightenment", why not explain him a bit? The rest of us could use that help too.

Anyway, I hope it was just a bit of frustration and we can leave it there.

-- 
Carlos Santander Bernal
June 27, 2006
Carlos Santander wrote:
> John Reimer escribió:
>> Kris actually voiced some of the feelings I've been experiencing about Bruno's posts.  It's hard to articulate that kind of "feeling." But for the most part, I feel he's accurate in his complaint (although he sounds a little exasperated).
>>
>> Bruno does come across extremely confident, and while "ego" is a strong word,  Bruno has given us very little indication that his posts are an expression of anything other than that.  So that leaves us thinking one of two things: either he really knows what he's talking about and likes bombarding the community with statements of absolute truth, despite the fact that nobody really knows why he thinks he knows (like maybe many long years of research, experience, and study?) ; or he's a 21 year old college kid who is quite bright, but has a penchant for talking about what's right and wrong about everything as if his is the final word on the matter.
>>
>> Either way, there's no common courtesy or deference to the experience of  others, many of whom may have a whole lot more years behind them in the computer industry. There's no gentle discussion. There's just strident confidence about how things are with little justification for it or evidence as to why. This world is full of gray areas and full of systems that try to make an organized approach to understanding and working in them, but that doesn't make any one system perfect.  As time goes on, we find that out.
>>
>> Regan, It's less about his being a student, which as you say really makes no difference, and more about how he voices his opinions with very little reason for us to know why his word should be law on matters.  The student thing comes up because that's about the only portrait Bruno has bothered to paint for us (his signature).  And I'm afraid that portrait is rather lacking in any substance.
>>
>> Regan, you've been in the same spot as Bruno, I think, and perhaps empathize with him a little, especially in relation to dealing with Kris :).  But you've doggedly persisted through, developed D code, contributed to the community in significant ways and thus earned that amount of respect you now deserve.  But there were times when people were annoyed with your innate ability to start long-winded debates on things. Some of your opinions came across the same way.
>>
>> When youth speak with so such confidence, it tends to come across as abrasive, annoying, and egotistical, no matter what the original intention may be.
>>
>> I'm giving Bruno the benefit of the doubt.  He probably just enjoys D, this community, and the language related discussions so much, that he has trouble holding back.  That's nice... but there are consequences to any action lacking self-control. :)
>>
>> -JJR
> 
> 
> I think Kris overreacted. Maybe he was right, but I don't think that was the right way to express it. Experience is a very valuable thing, granted, but maybe Bruno has experience and he just hasn't made it public. But whether that's the case or not, I agree with Regan in that it shouldn't matter that much. 


You're right, Carlos; it does not matter that much. My point was simply that Bruno's long-standing behaviour of "correcting" every little detail, and his particular approach to doing so, is often out of step with his reality. That does *not* mean the information he passes along is wrong; nor does it mean it is right. Most things in the world can be considered right or wrong, given different circumstances.

You can visit Bruno's website where he talks about himself: the url is attached to each of his posts. You'll discover one 22 year old CS student.

My prior comment was not to suggest students are somehow unknowlegable -- not in the least -- those lucky people tend to have a lot of time to peruse the literature and learn. At least, it was the task given to me at that time. And who knows; maybe Bruno is a true genius. Instead, as has been pointed out, these persistent "corrections" are often couched in less than favourable terms.

To put this into perspective: let's suppose for a moment that you, Carlos, had spent significant effort designing and writing for the benefit of the community. Let's also suppose that the language spec silently changed and "broke" your designs somewhat. Finally, let's suppose you post a report about those things which are broken, and then this guy Kris comes along and says something like the following:

"Pah! How stupid to follow the spec, or even the long-term language behaviour when, as I will tell you, *I* know how it should have been done in the first place. You see, you can thank only yourself for your broken design"

Well, gee - what a complete arsehole. Doesn't matter whether I'm an arrogant student, an arrogant professor, or an arrogant policeman. Thus, the student comment should be taken within context. Certainly was not meant as an offence to students.

Of course, there will probably be those who suspect I am just sensitive to any kind of criticism. All I can say is, if that were an issue, I would hardly be publishing code. It's a bit of a shame more people don't do that.

What get's my goat is this ~ and it's something to think about ~ there's a world of difference between genuinely trying to impart knowledge, and simply wielding it like a hefty club





June 27, 2006
Carlos Santander wrote:
> 
> I think Kris overreacted. Maybe he was right, but I don't think that was the right way to express it. Experience is a very valuable thing, granted, but maybe Bruno has experience and he just hasn't made it public. But whether that's the case or not, I agree with Regan in that it shouldn't matter that much. And if you, Kris, think Bruno needs a bit of "enlightenment", why not explain him a bit? The rest of us could use that help too.
> 
> Anyway, I hope it was just a bit of frustration and we can leave it there.
> 

Carlos said: "But whether that's the case or not, I agree with Regan in that it shouldn't matter that much."

Actually, Carlos, I beg to disagree. Experience is everything (and especially, may I add, experience using D past and present).  Because if Bruno doesn't have it and ends up just voicing what he reads... and voices it in the "conclusive" manner that he does... well it just amounts to the same thing as someone being handed a loudspeaker and a script... and perhaps is just as annoying.

Furthermore, being blunt and direct in expressing an opinion is not always the wisest route to go: if it is the chosen route, it better be very carefully measured.  If one wants to learn and grow in a community, especially as a 22 year old CS student, then flatly stating somebody is wrong in a matter is probably the worst approach:

1. It is probably the fastest way to offend and cause a discussion to vier into coarse waters.

2. It is presumptuous without fully understanding the persons experience and point of view.

As an object lesson, I suggest Bruno go and learn who Kris is and how long and hard he's worked with D over the years.  Read his posts from the old D group and then later in this one.

In this regard, Bruno really made no acknowledgment of Kris' experience with evolving D features.  And nor did he show any interest to learn about them.  It was like "so what?"

Bruno, for your own sake, and to ensure continued valued participation in here, please treat long time D contributers with more respect than you have been (well treat everyone with respect, actually).  Some of these people have been around for a long time, know D inside and out, have done more programming in the language than even Walter himself, and have contributed much to what D has become today.

Bruno, You are totally out of line. And all others that say that loud and blunt contradiction should be the natural mode of progressive learning and discussion in the D newsgroup are confused.

Why am I and others jumping on Bruno like this?  I hope he understands that this is a courtesy to keep him from being completely ignored, filtered, or constantly chastised.

Carlos, this is not against you at all;  I've always found you respectful and your posts easy to read even when you stated your opinions most earnestly.  I just wanted to explain, as best as I could, how I see things here before too much support is garnered for Brunos style of confrontation.

Okay.. that takes care of my vent for the next few months. :)

I wish everyone on the D newsgroup many happy, joyous days. ;)

-JJR






June 27, 2006
Regan Heath wrote:
> On Mon, 26 Jun 2006 16:27:08 -0700, John Reimer <terminal.node@gmail.com>  wrote:
> 
>> Regan Heath wrote:
>>
>>> Why mention Bruno is a student? What difference does it make?
>>>  I don't know a lot about the issues around overriding protection and  would be interested to hear why you think Bruno is wrong in his  comments because what he has said so far (you've implied he's ignoring  some issues, what issues?) makes sense to me.
>>>  I get the impression you're not interested in discussing it, which is  fine, can someone else illuminate it for me?
>>>  Regan
>>
>>
>>
>> Kris actually voiced some of the feelings I've been experiencing about  Bruno's posts.  It's hard to articulate that kind of "feeling." But for  the most part, I feel he's accurate in his complaint (although he sounds  a little exasperated).
>>
>> Bruno does come across extremely confident, and while "ego" is a strong  word,  Bruno has given us very little indication that his posts are an  expression of anything other than that.  So that leaves us thinking one  of two things: either he really knows what he's talking about and likes  bombarding the community with statements of absolute truth, despite the  fact that nobody really knows why he thinks he knows (like maybe many  long years of research, experience, and study?) ; or he's a 21 year old  college kid who is quite bright, but has a penchant for talking about  what's right and wrong about everything as if his is the final word on  the matter.
>>
>> Either way, there's no common courtesy or deference to the experience of    others, many of whom may have a whole lot more years behind them in  the computer industry. There's no gentle discussion. There's just  strident confidence about how things are with little justification for  it or evidence as to why. This world is full of gray areas and full of  systems that try to make an organized approach to understanding and  working in them, but that doesn't make any one system perfect.  As time  goes on, we find that out.
>>
>> Regan, It's less about his being a student, which as you say really  makes no difference, and more about how he voices his opinions with very  little reason for us to know why his word should be law on matters.  The  student thing comes up because that's about the only portrait Bruno has  bothered to paint for us (his signature).  And I'm afraid that portrait  is rather lacking in any substance.
>>
>> Regan, you've been in the same spot as Bruno, I think, and perhaps  empathize with him a little, especially in relation to dealing with Kris  :).  But you've doggedly persisted through, developed D code,  contributed to the community in significant ways and thus earned that  amount of respect you now deserve.  But there were times when people  were annoyed with your innate ability to start long-winded debates on  things. Some of your opinions came across the same way.
>>
>> When youth speak with so such confidence, it tends to come across as  abrasive, annoying, and egotistical, no matter what the original  intention may be.
>>
>> I'm giving Bruno the benefit of the doubt.  He probably just enjoys D,  this community, and the language related discussions so much, that he  has trouble holding back.  That's nice... but there are consequences to  any action lacking self-control. :)
> 
> 
> I tend to agree with a lot (perhaps all) or what you've said above.
> 
> I do empathise with Bruno, he's obviously confident in his own knowledge  and opinion, as I think many people are. He's also blunt and direct in  expressing that opinion, as I can be. I have been in his position and what  I needed in that position was discussion on the topic to either cement my  ideas/thoughts or to discover new ideas (like those that Kris alluded to  here) which would later change my opinion.

Hey, Regan;

> 
> I've learnt a lot from this newsgroup, despite having 7 odd years of  programming experience (which isnt a lot compared to some here I know). I  don't think anyone, regardless of experience, should stop learning, 

so very true


> and  this newsgroup is a very good place to learn.

It certainly is when information is tendered in a genuine manner


> So, all I'm asking is for someone, who knows what Kris was alluding to, to  explain it to me cos I can't see anything wrong (factually) with what  Bruno has said so far. :)

That's because the single point made is not factually incorrect; nor was it ever claimed to be. Instead there's a bit of the "Shock & Awe" aspect lurking there. Half-truths are often worse than nonsense.

Briefly, that vague example is showing how one can purposely subvert the compiler ~ a good way to attach negative connotation to anything.

Unfortunately that is not balanced in any manner by why the approach might be useful (not the subversion aspect!), why it might be considered more useful than one or several other alternatives, or why (for that matter) it was chosen as the model for D.

IMO, one of the hardest things to do in this realm is coming up with a good compromise. FWIW, I feel D is an unusually well-considered language ... Walter's long experience clearly shows up in the good parts, and I rather suspect D would be a shadow of itself if the ability to carefully balance various compromises was not well-formed. That doesn't always work, as we've seen, but it's needed as a foundation. Perhaps you get my drift here?

But again, this whole topic is actually about broken functionality and what would appear to be quietly changing specs; not the pros and cons of one approach over another. That aspect holds little value vis-a-vis the original post, so you'll perhaps forgive me if I decline from discussing further at this time?

If Walter wishes to open up the topic for input, and chooses to be frank about the original design and what his concerns are, that would make for interesting material ... we could perhaps all learn a thing or two

Cheers;
June 27, 2006
kris escribió:
> Carlos Santander wrote:
>> John Reimer escribió:
>>> Kris actually voiced some of the feelings I've been experiencing about Bruno's posts.  It's hard to articulate that kind of "feeling." But for the most part, I feel he's accurate in his complaint (although he sounds a little exasperated).
>>>
>>> Bruno does come across extremely confident, and while "ego" is a strong word,  Bruno has given us very little indication that his posts are an expression of anything other than that.  So that leaves us thinking one of two things: either he really knows what he's talking about and likes bombarding the community with statements of absolute truth, despite the fact that nobody really knows why he thinks he knows (like maybe many long years of research, experience, and study?) ; or he's a 21 year old college kid who is quite bright, but has a penchant for talking about what's right and wrong about everything as if his is the final word on the matter.
>>>
>>> Either way, there's no common courtesy or deference to the experience of  others, many of whom may have a whole lot more years behind them in the computer industry. There's no gentle discussion. There's just strident confidence about how things are with little justification for it or evidence as to why. This world is full of gray areas and full of systems that try to make an organized approach to understanding and working in them, but that doesn't make any one system perfect.  As time goes on, we find that out.
>>>
>>> Regan, It's less about his being a student, which as you say really makes no difference, and more about how he voices his opinions with very little reason for us to know why his word should be law on matters.  The student thing comes up because that's about the only portrait Bruno has bothered to paint for us (his signature).  And I'm afraid that portrait is rather lacking in any substance.
>>>
>>> Regan, you've been in the same spot as Bruno, I think, and perhaps empathize with him a little, especially in relation to dealing with Kris :).  But you've doggedly persisted through, developed D code, contributed to the community in significant ways and thus earned that amount of respect you now deserve.  But there were times when people were annoyed with your innate ability to start long-winded debates on things. Some of your opinions came across the same way.
>>>
>>> When youth speak with so such confidence, it tends to come across as abrasive, annoying, and egotistical, no matter what the original intention may be.
>>>
>>> I'm giving Bruno the benefit of the doubt.  He probably just enjoys D, this community, and the language related discussions so much, that he has trouble holding back.  That's nice... but there are consequences to any action lacking self-control. :)
>>>
>>> -JJR
>>
>>
>> I think Kris overreacted. Maybe he was right, but I don't think that was the right way to express it. Experience is a very valuable thing, granted, but maybe Bruno has experience and he just hasn't made it public. But whether that's the case or not, I agree with Regan in that it shouldn't matter that much. 
> 
> 
> You're right, Carlos; it does not matter that much. My point was simply that Bruno's long-standing behaviour of "correcting" every little detail, and his particular approach to doing so, is often out of step with his reality. That does *not* mean the information he passes along is wrong; nor does it mean it is right. Most things in the world can be considered right or wrong, given different circumstances.
> 
> You can visit Bruno's website where he talks about himself: the url is attached to each of his posts. You'll discover one 22 year old CS student.
> 
> My prior comment was not to suggest students are somehow unknowlegable -- not in the least -- those lucky people tend to have a lot of time to peruse the literature and learn. At least, it was the task given to me at that time. And who knows; maybe Bruno is a true genius. Instead, as has been pointed out, these persistent "corrections" are often couched in less than favourable terms.
> 
> To put this into perspective: let's suppose for a moment that you, Carlos, had spent significant effort designing and writing for the benefit of the community. Let's also suppose that the language spec silently changed and "broke" your designs somewhat. Finally, let's suppose you post a report about those things which are broken, and then this guy Kris comes along and says something like the following:
> 
> "Pah! How stupid to follow the spec, or even the long-term language behaviour when, as I will tell you, *I* know how it should have been done in the first place. You see, you can thank only yourself for your broken design"
> 
> Well, gee - what a complete arsehole. Doesn't matter whether I'm an arrogant student, an arrogant professor, or an arrogant policeman. Thus, the student comment should be taken within context. Certainly was not meant as an offence to students.
> 
> Of course, there will probably be those who suspect I am just sensitive to any kind of criticism. All I can say is, if that were an issue, I would hardly be publishing code. It's a bit of a shame more people don't do that.
> 
> What get's my goat is this ~ and it's something to think about ~ there's a world of difference between genuinely trying to impart knowledge, and simply wielding it like a hefty club
> 
> 
> 
> 
> 

This is to both your and John's replies, let's just leave it there. Both of you made good points but it doesn't help anyone to keep this going.

-- 
Carlos Santander Bernal
June 27, 2006
kris wrote:
> Bruno Medeiros wrote:
>> kris wrote:
>>>>> The original behaviour limited the exposure of an overridden method to be less than or equal to the exposure of the original. For example, protected could not be made public via an override. The compiler would give you an error if you attempted to do so. The compiler used to prevent you from intercepting a superclass method where the original intent (of the designer) was that said method whould be internal usage only. For example, final, package, or private methods.
>>>>>
>>>>
>>>> If that was the original behavior, that behavior was broken. You see, when overriding a method, limiting the protection level is unsafe, whereas widening the protection level is safe. The protection level is a call-site contract (like the return type) and as such is only safe when overridden invariantly or *covariantly*.
>>>>
>>>
>>> LOL ... you might choose to state "in the research-paper entitled zzzz it is noted that ....", or maybe even "language X does it this way". But alas, no.
>>>
>>
>> Yes, I choose not to do that, and why is that a problem?
> 
> Because in most of your posts you make out as though you are the "one and true" beacon of knowledge. But you're most certainly not: you're a student. It might add some credence to your perspective if you were to reign in your ego for a moment. This is exactly the problem with the NG -- people can't even make a bug report without one of a small-but-vocal group using it to bolter their ego. You, for example :)
> 
> A bit of humilty makes the NG a much more vibrant and useful place to be around. Alternatively, perhaps we should stop posting reports to the NG altogether.
> 
> 

Yes, I am so far just a student, and do not have much experience as many here in the NG or in the general Computer-Science/Software-Development population.
And yes, I often do write bluntly and in a somewhat "beacon of wisdom" tone.

But that does not mean you can immediately dismiss my comments as incorrect or wrong just because I am a student or write in a certain tone! That is a fallacy! What about actually examining what the person is saying? And then *debating* and debunking?

I explained and presented an argument (which could indeed be wrong) in my comments, but never once (until recently) did you actually comment on my reasoning.

Here's the funny thing. When I wrote the original post, I did have an example of a language that did that. It was Java, who allows covariant protection overriding. (C#, which I checked later than the original post, works with invariant protection overriding).
But I purposefully choose not to mention that, as I wanted to see how people (and you in particular) would react to the argument itself. And this is what happened...
[I generally don't like to argue things with counter-examples/analogies (like "it's the way it's done in X") because it usually means people failed to understand/agree with the "constructive" argument.]

So I hope the Java example is now enough to show that #1 is not a broken behavior, and I regret that my "student" argument was not enough by itself to show it. (or do you still think #1 is broken?) . It might not be the only, or the best behavior, true, but it is not broken.

Still, I am gonna withdraw some of my other statements that I now think are not very correct (see below). But this realization came not from any debunking of yours kris, but rather it occurred to me when I was replying to Sean.

>>>  > If you designed your classes around that original behavior, they're broken.
>>>
>>> Indeed they are. They were designed in strict accordance to the written D spec. Sean notes that certain original parts of the spec have now somehow silently disappeared ... no mention of such fundamental change was ever apparently announced or discussed.
>>>
>>
>> I meant your classes themselves, their design and conception, not your classes running on some implementation. 

I withdraw my comment that this behavior (and thus your classes as well) are broken. Although protection contravariance does allow one to access a private function (private or other restrictive access level) from a context outside of the private scope (thus "breaking" the usual private semantics), it does not mean that the behavior as a whole is broken and does not make sense. One can think of it as particular exception to the private (or other restrictive access) level, which is a valid behavior.

It does not mean this behavior is the best, just that it is a possible one. But then calling it "broken" is harsh and well, incorrect. I would call it now "unorthodox".

> 
> Oh, the notable condescension was palpable the first time around; again, the code was written to the D spec. You can imply those who followed said spec are outright morons for doing so, but that makes no difference. The fact is that the D spec *was* clear, precise, and followed a well-trodden path in its exposed design. The mere fact that /you/ don't approve of some finer points hardly matters, and doesn't place anyone at fault who followed said spec.
> 

Never once have I called you, implied, or even thought that you were a moron or stupid for following the D spec or designing the classes like that. I just said your classes had an misconception/error, but that does not make the class-maker an idiot. *You* are the one who implied and projected those insults, and frankly, that is not a very nice thing to do, putting bad words in other people's mouth!

> 
>  > I'll give an example of why is that. If the original behavior allowed  > protection level contravariance, then we could have the following:
> 
> Indeed; and it may come as a shocking surprise that you're not the only one aware of some OOP fragilities. However, you paint a heavily lopsided picture since you're either blind to the other issues or choose to be sly about not mentioning them. So, though you're trying to force this into an NG discussion, Bruno, it's already done with until Walter asks for opinions.
> 
> Good luck with your exams.

Ok, seriously, this comment about the "other issues" I'm "either blind" or "choose to be sly about not mentioning them" has particularly annoyed me. I already stated that "#2 and #3 are clearly a bug", and then gave a short sentence why. What more would you like me to say and discuss about this other issues?! Again, this is not a rhetorical question, please answer, clarify me, why I'm being blind and sly about these other issues, and what more should I have said about them.

-- 
Bruno Medeiros - CS/E student
http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#D
June 27, 2006
Carlos Santander wrote:
> kris escribió:
> This is to both your and John's replies, let's just leave it there. Both of you made good points but it doesn't help anyone to keep this going.

Aye;