Talk:Reference (computer science)/Archived January 16 2006

The following discussions from Talk:Reference (computer science) were archived here. -- Doug Bell ( talk/contrib ) 08:25, 16 January 2006 (UTC)

TakuyaMurata - I don't think your contributions to this page are as helpful as they could be. I wrote something on your user talk page about this. You are adding unnecessary details to this article in awkward English that are not helping to make this article good for the average WP reader. I moderately edited your opening para, you have reverted it, reinserting some of the things I have problems with. I don't want this to degenerate into an edit war, so please take a breather and check out my changes before reverting them. I have two advantages over you - I am an English native speaker and I have a degree in CS. I don't wish to belittle your contribution - it's fine, but I fear you are writing for the wrong audience. GRAHAMUK 00:03, 23 Sep 2003 (UTC)

Specifically - a reference is not PRIMARILY used for nodes in trees, etc. The word PRIMARILY means chiefly, most commonly... I don't believe this usage is the most common use for references - simple memory references and object references are far more common. That's why I took that word out - it corrects this sense of the sentence without invalidating what you wrote about trees. GRAHAMUK 00:08, 23 Sep 2003 (UTC)


 * If I were annoying you by writing in awkward English, then I have to admit my writing is not good enough. But again I am not sure what you are specifically refering to unnecessary details or degenerating the article. I reworked the intro a little bit more. I think this is the way articles in the wikipedia are developed. I don't want to give you the impression that I am using you as a copyeditor but as you see, I certainly need someone who copyedits my drafts. From history, most of your changes seem to go to the old text with correcting my misspelling and gramatical errors. I certaily appreciate your help and please let me know if there is still parts you think I need to rework. -- Taku 01:10, 23 Sep 2003 (UTC)


 * I have no problem correcting any English errors - I hope that's something you won't mind me doing - it's just an effect of not being a native speaker, I can't possibly criticise you for that. But you repeatedly edit the opening para in such a way that distorts (to my mind) what a reference essentially is. First off, a data structure can be almost anything - not just a more complex entity such as a tree or an array - it could simply be a record. A single integer can be a record. An object instance is a type of record. A block of memory is a type of record. These usages are far more pervasive in typical programs than are trees, linked lists, and so on. Therefore references to them are more common, so to say a reference is PRIMARILY used to construct nodes in a tree or linked list is simply wrong. I reordered the sentence to make the facts correct, but you persist in reverting it. Note I am not deleting your mention of trees and so on, I'm simply rewording it to fit the facts. The second thing in general is that you keep adding stuff that does not add to the article - it adds detail, but tends to obscure the essential facts. Mentioning aspects of the C language is interesting, but largely belongs on the C language page. I left in (and reworked) the stuff about pointer arithmetic in C, it does help to make the problem of pointers clear. Assembler is not relevant, abuses are possible without it. As I mentioned on your talk page, we must write for the right audience - that audience is NOT an existing computer programmer - they already know this stuff. The audience is somebody who wants to learn something - they will not be able to do so if the essentials are not presented in clear isolation. I run into this problem a lot here - an opening para should be a basic statement that puts across the facts. It need not be complete. It should not ramble on to include all the ifs and buts and exceptions - all that stuff can be put in later in the article, where somebody who wants to know more detail will find it, having already grasped the basic point at a glance. With your second para as it was, somebody will get the impression that a reference is something specific to trees or linked lists, not the far more general and abstract thing that it is. I hope I'm making myself clear! ;-) GRAHAMUK 01:27, 23 Sep 2003 (UTC)

Thank you for detailed reply, now I got your idea correctly. We basically have two conflicts: open para and the depth and breadth mainly in the pointer section. I guess the trouble is that I was thinking a reference as a recursive type, whose mention you deleted ack!, while you regard it mainly as a pointer in C. If you take a point of view that a reference is a recursive type, then it is mainly, primarily, chiefly used to construct data structures where each nodes is connected by references. Because we don't want an edit war, I will look at some CS books later.

And about the second point. I think it is just your misunderstanding that most of parts in pointers came from this article and articles I merged. I do agree with that we should not go too far discussing pointer operations or casting details. I just left them but I was not brave enough to delete them.

The following discussions from Talk:Reference (computer science) were archived here on Janurary 15, 2006. -- Doug Bell ( talk/contrib ) 08:25, 16 January 2006 (UTC)

Anyway, I am tired. I will leave this article for now. It is time to get started to do homework.

-- Taku 01:58, 23 Sep 2003 (UTC)


 * Fair enough Taku, I think we have reached an understanding. I think the thing is, since Pointer is now discussed at length in this article as a type of reference, then it colours the entire article, which becomes biased towards pointers. I do wonder if it would be better to make Pointer a separate article, where it could be given a more thorough treatment, and also leaving the definitions and explanations of reference to be "purer" in form, unsoiled by pointers! I'm not sure but I think this was how it was organised at one time.


 * I should mention that I tend to see things from a C++ perspective, since that's what I program these days. C++ tends to abuse certain terms - reference is likely one of them, which may have a broader or debased definition in C++ than a pure CS treatment would. I feel this page should give the general usage, rather than restrict itself either to particular implementations, or a pure abstract definition. GRAHAMUK 02:16, 23 Sep 2003 (UTC)

Might want to separate the discussion of pointers, which are a specific type of reference, to another page. Pointer, Smart Pointer, and Handle (C, C++ viewpoint) 169.207.85.65 17:46, 2 Nov 2003 (UTC)


 * I agree. The article then concentrates on more conceptual aspect rather than specific datatype. -- Taku 20:19, Nov 2, 2003 (UTC)


 * I also agree - but Taku, you were the one who merged the original different articles, so make up your mind!!! GRAHAMUK 21:43, 2 Nov 2003 (UTC)


 * Well, yeah. I guess I have to admit that was a mistake somehow. -- Taku 23:53, Nov 2, 2003 (UTC)