This is an old revision of this page, as edited by Christian75(talk | contribs) at 22:36, 26 November 2011(importance=low for computer science). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.Revision as of 22:36, 26 November 2011 by Christian75(talk | contribs)(importance=low for computer science)
This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.ComputingWikipedia:WikiProject ComputingTemplate:WikiProject ComputingComputing
This article is within the scope of WikiProject C/C++, a collaborative effort to improve the coverage of C and C++ topics on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.C/C++Wikipedia:WikiProject C/C++Template:WikiProject C/C++C/C++
This article is within the scope of WikiProject Computer science, a collaborative effort to improve the coverage of Computer science related articles on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.Computer scienceWikipedia:WikiProject Computer scienceTemplate:WikiProject Computer scienceComputer science
Even though there was consensus that a split of C library-specific stuff from Null-terminated string was needed, there [[was some disagreement about what title to choose. I chose this title because it is consistent with other articles about C standard library. Also, "C string handling" gets more hits (225,000) on google than "String handling in C" (35,900) so this title is favoured by WP:COMMONNAME. If anyone disagrees, please discuss here, I am open to suggestions. Also, a relevant discussion is at Talk:C standard library#Move request through WP:RM. 1exec1 (talk) 18:04, 9 November 2011 (UTC)[reply]
I reverted this edit because both C++ and PHP are not very related. C++ does not have strlen per se; it inherits that function from C. As of PHP's strlen, it does not operate on C strings. PHP strings are not even null-terminated ([1]), so I don't see how that's relevant to C string handling the article is about. I agree that there's slight problem of strlen redirecting here, however this problem should be solved using different means than linking from this page per above reasons. Can anyone suggest better redirect target or another solution? 1exec1 (talk) 19:18, 23 November 2011 (UTC)[reply]
As for the prototype of strerror, I deleted the prototype because it fails #1 in WP:NOTMANUAL, since function prototypes belong to reference manual not encyclopedia. Also, it fails #8 in WP:NOTDIRECTORY: "Wikipedia articles are not a complete exposition of all possible details. Rather, an article is a summary of accepted knowledge regarding its subject." Exposition of a function prototype definitely falls outside the scope of a summary, while the name of the function and short one-sentence description probably is still within, although that's also debatable. 1exec1 (talk) 19:17, 23 November 2011 (UTC)[reply]
Its not an WP:Manual to have the prototype. And its not all posible details to list the protype, its basic information about the function. But if you think so, why have the list of functions at all? Christian75 (talk) 19:45, 23 November 2011 (UTC)[reply]
Why do you say that prototype is not covered by the notmanual/notdirectory policy? These guidelines supplement the what Wikipedia is not, which itself probably has roots in the notability principle. In my understanding, the spirit of all these policies is that Wikipedia should include the information that is not relevant for broader public. For example Wikipedia shouldn't have a page that nobody reads or material within a page that is important to nobody. I feel that prototypes provide very little, if any, additional information. For example, compare int strlen(char *s) - returns the length of the given string s with strlen - returns the length of the given string: the second version carries essentially the same information as the first, just without the redundant bits. So I think the second way of presenting information is better.
Another thing is consistency. If we decide to show prototypes, then we have to show them for all functions. However, some of the functions have quite complex prototypes that need a lengthy explanation even when the functionality of the function can be explained in one sentence. So we end up with two alternatives none of which are acceptable: have a prototype without explanation (what's the purpose of the prototype then) or explain the prototype in a way that violates notmanual. This is another problem.
Regarding the functions themselves I do not think they violate notmanual because these functions are notable enough to warrant a mention, they are relevant to this article and that information is important to all readers in order to understand the article. 1exec1 (talk) 20:52, 23 November 2011 (UTC)[reply]
You wirte a lot. First it doesnt matter if people read it or not (WP:NOBODYREADSIT). I think prototypes are useful, and basic information for the functions. If I see the prototype "int strlen(char *s)", it tells a lot, if I just see the description I have to search information another place. I cant see how it violates WP:NOTMANUAL - its a description of what strlen is. Its like that Schrödinger equation didnt have the equation but just an explanation with words. Christian75 (talk) 21:49, 23 November 2011 (UTC)[reply]
I still don't understand your argument. What additional information does "int strlen(char *s)" add to strlen - returns the length of the given string. The description already implies all the arguments. I don't think anyone who's looking for a general description of the function can find the prototype useful. It's needed only for those who are programming and looking for a reference manual, but again WP:NOTMANUAL applies. Can you provide at least one usage case when prototype is useful for someone who's not programming in C? As for physics equations, they are different subject, since an equation is self-explanatory enough that an explanation, which is neither concise nor precise, is not needed. 1exec1 (talk) 22:42, 23 November 2011 (UTC)[reply]
First, an equation is not self-explanatory. But okey, this is about the prototypes. If you think the list does violate WP:NOTMANNUAL with prototypes, please explain, why it doesnt violate WP:NOTMANUAL without the prototypes. Its still look the same, but with one information less. And do you think that non-programmers are looking for this kind of information (and it really doesnt matter who is looking for it) Christian75 (talk) 08:24, 24 November 2011 (UTC)[reply]
How an equation is not self-explanatory? If I write F = ma it immediately defines a relationship between mass, acceleration and force. All is needed to know is notation. When you write size_t strlen( char*s ), or size_t strcspn(const char *s1, const char *s2); even if you know that s, s1, s2 are strings and size_t is integer you can't say what the function does.
I do not argue that entire line violates WP:NOTMANUAL, only the prototype bit, which is redundant and reduces readability. Since this article is about C string handling, not C string per se, the function names and short descriptions are relevant and notmanual - you can't talk about functions working on C strings without naming them. That information is important to anyone who has programming skills and is interested in computing, whereas the prototypes are relevant only to C programmers looking for reference extensively detailing (#8 in WP:NOTDIRECTORY) the behaviour of the function (WP:NOTMANUAL). Thus my argumentation still holds: prototypes are redundant, reduce readability, fail WP:NOTMANUAL and WP:NOTDIRECTORY.
Since you haven't provided an argument why prototypes should be included except that you think it's important and doesn't fail NOTMANUAL I removed it again. Because of that and as you are the first opposing the absence of prototypes, I think that you should ask for more opinions to establish consensus. Maybe wikiproject computing and Talk:C standard library would be a good place to start. Until the consensus is established, the prototypes should stay as is. 1exec1 (talk) 12:07, 24 November 2011 (UTC)[reply]
Its like an formula - an educated person knows what F = ma means (but the average person has no clue at all) - it gets worse if you had taken an equation from Schrödinger equation (an educated person knows what it means). An educated person knows what size_t strcspn(const char *s1, const char *s2); means - its helpfull for the reader to see prototypes because it gives information about what the function does - what to put in, and what to expect to get out - and that what wikipedia should do - explaining how thinks works. The way the article is know its just a long list of externals links. You are the only person which removes the prototypes, and you have done it on every article with prototypes that you have edited. I think nobody cares about the C articles which are of very poor quality - but I do. Christian75 (talk) 22:16, 26 November 2011 (UTC)[reply]