C
Links of Relevance
A repository of C-related documents, and links to such
- JTC1/SC22/WG14: the C standards committee web page
- The current language definition, C99 (a most recent draft of the actual standard); see also an older version (or plain text)
- Rationale for the C99 standard
- The soon to be approved (as of 2011) new language definition (a most recent draft of the actual standard)
The new C standard: an economic and cultural commentary: a book thoroughly commenting the standard
A concise description of the standard library
A highly esteemed reference to the standard library
Essential C: a set of course texts from the Stanford CS Education Library
C Programming: an online course
A book on C programming for beginners, that once used to be in print
Hands On: C/C++ Programming and Unix Application Design, and a much extended version for printing: a book on C (and C++) programming and Unix system programming, including X/Motif
Notes on programming in C (remarks on style)
C traps and pitfalls
Why Pascal is not my favorite programming language (a comparison with C)
Object oriented programming with ANSI C: a book
Object oriented programming in C: an article and a software package
IOCCC: The International Obfuscated C Code Contest – extremely twisted and often truly ingenious C programs
The Ten Commandments for C Programmers (a parody)
- Freely available implementations:
- GCC, the GNU Compiler Collection for Linux. There are ports to MS DOS, MS Windows (or this), and Mac OS X
- lcc and lcc-win32 for MS Windows
- Pelles C: a compiler for MS Windows based on lcc
- Pacific C for MS DOS (if currently unavailable, try this link and this for the documentation)
- TCC – The Tiny C Compiler: very small, very fast, and producing small code
- pcc: the Portable C Compiler
- clang: a C/C++/Objective-C/Objective-C++ frontend for LLVM
- The EiC C Interpreter
- Also see any C++ compiler
- Tools:
- Splint: a modern, open-source version of lint
- Metre: a parser, a software-metrics tool, and a call-tree generator for C
- CIL: a high-level representation along with a set of tools for program analysis and source-to-source transformation of C programs
- CCured: a source-to-source translator for C, securing against memory safety violations
- History. C’s ancestors:
- The home page of Dennis M. Ritchie, the author of C
- The Development of the C Language; also in PostScripts and in PDF
- User’s reference to B
- The Programming Language B
See also BCPL
- Clones:
- Cyclone: a safe dialect of C, with pattern matching, algebraic datatypes, exceptions, etc.
- Cforall: a (mostly) conservative extension/improvement to C
- MetaC: a C with metaprogramming facilities – reflection, refactoring, reconfiguring and modifying arbitrary C source code
- `C: a C with dynamic code generation
boykobbatgmaildotcom