On 10/10/07, Jenda Krynicky <[EMAIL PROTECTED]> wrote:
>
> From:   yitzle <[EMAIL PROTECTED]>
> > On 10/10/07, Jenda Krynicky <[EMAIL PROTECTED]> wrote:
> > > > Anyhow, the point is that Perl doesn't have those confusing weird
> > > "pointer"
> > > > stuff. $a and $c do not "point" to the same place, the just got the
> same
> > > > value. (Well, Perl /does/ have pointers, but... whatever.)
> > >
> > > Yeah, it does seem you are pretty confused by pointers in C. And
> > > probably by references in Perl too. I wonder how can you program
> > > without understanding pointers/references, but whatever.
> > >
> > > Jenda
> >
> >
> > The purpose of my message was to clarify the part of the documentation
> that
> > Kaushal asked about.
>
> I think you failed on that.


I would think that Kaushal would be the one making that decision.
In case you  did not understand, the clarification was made for Kaushal, not
you. I fail to see how you can judge whether my message to someone else
achieved its purpose. And even supposing Kaushal did notify you that my
message did not achieve its goal, you had no way of knowing this prior to
being told.
I'd think it is better to try to explain a matter than not explain at all
for fear the explanation may not achieve its goal.
I'd also like to point out that I fail to see how your message helps anyone
out.
Did you attempt to clarify the matter? Did you attempt to be helpful? You
made judgement calls that were both wrong and not based on a good source of
knowledge. Judgement calls like that are not only not helpful, but /are/
better kept unsaid. Unlike an attempt to help out.

> I am aware that Perl has pointers/references, as I mentioned, but the
> > question is not /about/ pointers, but variables.
>
> Then why did you start about C pointers? Why the C at the all? The
> int variables in C work exactly the same scalars work in Perl and the
> C pointers work (almost) exactly the same as the references in Perl.


It was to heighten the contrast.  I am sorry you  had issues understand
this.
Maybe the person I intended to aid also misunderstood the same idea..
Or maybe not, in which case my message achieved its intended purpose.
If it didn't help, other people might help Kaushal out. They might follow my
lead and do a better job clarifying what a pointer is; in that case, my
message was useful in illustrating how the matter can be clarified. Or maybe
my message was of no use.
I think its fair to say judgement calls of a person's knowledge that are
false or even not based on any good knowledge tend to be of no use...

And BTW ... you are aware of the fact that if you do
>
> int *b;
> *b = 5;
>
> you cause the program to crash, right?
> You did not start by assigning a variable to a reference to
> something, you assigned to the thing already referenced by a
> variable. And unlike Perl, C doesn't "autovivify" the pointer. It
> doesn't notice that the b doesn't point to anything yet and doesn't
> initialize the pointer. And will try to access the address 0.


Yes, I  am aware.
Are you aware that the purpose of my email was not to give working code, but
to explain a concept?
Is it so important that the code be current to the point of not achieving
its purpose? Because if I did get detailed, my message would have had a
lesser chance of being helpful by being more confusing.

If you need evidence, I can supply you with ample working C code I wrote. I
can also supply Perl code, if I require evidence to post to this group in an
attempt to help out members.
Can you supply evidence of your messages being helpful in the past?

> The documentation seems to be contrasting variables to pointers. Rather
> than
> > introducing perl references, I thought I could use a bit of C to explain
> how
> > it is possible that by changing $b, you affect $a, and then say with
> normal
> > Perl variables (I know, the word "normal" is wrong) do not exhibit this
> > behavior.
>
> This might make some sense if Kaushal knew C already. And I don't
> think it's the case.


Very good! Exactly why I didn't bother get detailed. It was only intended to
illustrate a concept!
But how can you not be sure whether Kausal knows C or not when you can tell
whether Kaushal found my reply helpful?

> I was trying to avoid being overly technical and trying to explain the
> > concept in a way that someone unfamiliar with pointers or references
> would
> > be able to understand them.
> >
> > How did my code indicate to you that I am confused about C pointers? It
> > looks pretty correct to me...
> > And Perl references? I mention they exist, but tried avoiding talking
> about
> > them in this explanation. I use references and pointers in programming,
> but
> > in this explanation, I believe I dealt with them correctly.
>
> It was not so much the code, but the comments.


That may be the case. Does it matter?

Jenda
>


This email raises a matter that I often see that bothers me.
Forgive me if I am out of bounds, but often someone who is just starting out
with a new language or concept asks a question to clarify something.
Sometimes the only answer is a complex answer. But at other times, a simple
answer exists.
Why do people seem to prefer giving the more complex answer? The person
usually wants a simple solution, not proof that you can write complex simple
line programs.

And why, when code is given to explain a concept, to people have to analyze
the code and pinpoint all the problems it has? An example does not need to
work. It demonstrates an idea! Its not meant to be compiled or ran.

- yitzle

Reply via email to