Jump to: navigation, search

The wiki shall be conceptually partitioned into (at least) six sections:

  • the comp.lang.c FAQ
  • comp.lang.c posting guidelines
  • selected comp.lang.c posts of archival value
  • useful utility code snippets and functions
  • solutions to exercises in K&R2
  • other content as topical in comp.lang.c with slightly less restriction (e.g. lists of useful C-related software; "the definitive portable C links page"; book reviews; links to online learning material; etc).

The FAQ shall retain its pre-wiki structure and numbering scheme. New questions added to the FAQ should be provably frequently asked.

Guidelines for content are as follows:

Classification Examples Comments
Provable facts
  • Language syntax
  • Standards-defined issues
  • Language history
Should be entirely accurate and reliable at all times and should ideally include references to the C standard and/or other reputable documentation and text books.
Easily supportable and representative comp.lang.c views
  • Casts should be avoided where possible
  • gets() should be avoided
  • The definition of lvalue is broken in C99

Supporting evidence should be provided, e.g. explaining that you cannot prevent a user causing a buffer overflow when using gets.

Less universally representative comp.lang.c views
  • Style
Should include alternatives with a pro-con analysis of each
Opinions of individuals or groups of comp.lang.c contributors
  • A proposed change/addition to the standard
The contributor(s) need not be an official editor but an editor will have to add the contributor(s)'s content to the official part of the site after first vetting it for appropriateness.
Solution(s) to problems
  • The solutions to exercises in K&R
  • Methods of checking for overflow on integer arithmetic.
May include alternatives with a pro-con analysis of each
Source code
  • A linked list implementation
  • A friendly replacement for fgets().
Should be strictly conforming and portable. Should be consistent in style and good-faith attempts made to ensure it is bug-free (including peer-review and testing).

Demonstration source code may be contained within any of this content.

The associated talk/discussion page for each official content page shall be editable by anyone using a (freely assigned) account. The purpose of these pages is to allow those other than editors to comment on errors or lacking content and to propose new content or collaboratively edit content. A very visible disclaimer at the top of the talk page should indicate that content is not official or fully under the control of the editors and may not be accurate or representative of comp.lang.c. Any editor may at their discretion move appropriate content from the talk page into the content page.

The talk pages are intended for discussion of the current and future content of the clc wiki, not to replace discussion of C programming in comp.lang.c or discussion of the standard as a document on comp.std.c.

Personal tools