www.digitalmars.com Home | FAQ | News Groups | Books | DMC++ | Nerdly Stuff
Last update Mon Apr 7 22:57:13 2008

Documentation
· Compiler & Tools Guide
· Runtime Library Reference
· IDDE Reference
· Change Log
· FAQ

Downloads
· C/C++ compiler
· D compiler
· DMDScript compiler
· MicroEmacs
· MTask

Community
· Forums
· News Groups
· Archives

· Bookshelf
· Features
· Contact
· News Digest
· Friends
· Related Sites
· Acknowledgements
· Consultants
· Site Map
· Walter Bright
· Empire

Bookshelf

These are some selections of books and specifications of general interest for programming and of specific interest to Digital Mars compilers.

D Programming Language


C

    "Programming Languages - C", ANSI/ISO/IEC 9899-1999
    This is the C international standard, also known as C99.

    The C Programming Language
    Brian W. Kernighan, Dennis M. Ritchie
    Prentice Hall; ISBN: 0131103628
    Answers to exercises.

    Expert C Programming
    by Peter van der Linden
    Prentice Hall PTR/Sun Microsystems Press; ISBN: 0131774298
    Errata, missing proof, and code examples.

    C Traps and Pitfalls, Andrew Koenig (Addison-Wesley)
    Written for intermediate and advanced C programmers, contains a detailed discussion of common C programming problems.

    Standard C: A Reference, P. J. Plauger and Jim Brodie (Microsoft Press)
    A guide to writing C programs that conform to the ANSI C standard. Both authors were officers of the committee that drafted the ANSI standard. Online version.

    C: A Software Engineering Approach, Peter Darnell and Philip Margolis (Springer-Verlag)
    An introduction to the C programming language. This book is ideal for new C programmers who have programmed in other languages.

    C: A Reference Manual, Samuel Harbison and Guy Steele, Jr. (Prentice Hall)
    Contains a detailed and authoritative discussion of the syntax, meaning, and idiomatic usage of ANSI Standard C.

    Portability and the C Language, Rex Jaeschke (Hayden Books)
    Covers writing portable C programs and is suitable for advanced C programmers. It provides guidelines on writing programs that can be compiled with different compilers and run on multiple platforms. It points out changes introduced with ANSI C. It is useful if you port code from one platform to another or from an old (pre-ANSI) version of Zortech to Digital Mars C++.

    Portable C Software, Mark R. Horton (Prentice Hall)
    About writing portable C programs, but emphasizes porting among C compilers for UNIX and MS-DOS.


C++


Standard Template Library


Compilers


Floating Point

    Computer Approximations
    John F. Hart et al, Krieger Publishing Company, ISBN 0-88275-642-7
    From the Introduction: "This handbook is intended to acquaint the user with methods for designing function subroutines (also called mathematical function routines), and in the case of the most commonly needed functions, to provide him with the necessary tables to do so efficiently."
    Here's a review.

    Software Manual for the Elementary Functions
    William James Cody, Prentice Hall
    Classic cookbook for implementing transcendental functions. It's of less relevance these days since it's done in hardware, but it's still good if what you need isn't in hardware, or if you really are interested in how it works.

    IEEE Standard for Binary Floating-Point Arithmetic
    ANSI/IEEE Std 754-1985
    The Institute of Electrical and Electronics Engineers, Inc.
    345 East 47th Street, New York, NY 10017, USA

    "Floating Point C Extensions", NCEG 91-015

    8087/80287/80387 For the IBM PC and Compatibles : Applications and Programming With Intel's Math Coprocessors Richard Startz, Brady Books, ISBN 0-13-246604-X
    Excellent explanation of how to use the math coprocessors to maximum advantage.

    Prof. William Kahan's home page
    An invaluable resource for writing correct floating point code.

    Numerical Recipes in C, William Press, Brian Flannery, Saul Teukolsky, and William Vetterling (Cambridge University Press)
    A detailed technical description of numerical methods with implementation examples in C.


32 Bit Windows Programming


16 Bit Windows Programming


Graphics


Assembly Language

    ZEN of Code Optimization
    Michael Abrash
    Coriolis Group Books
    ISBN 1-883577-03-9

    "Pentium Processor User's Manual, Volume 3: Architecture and Programming Manual"
    Intel Literature Sales
    PO Box 7641
    Mt. Prospect, IL 60056-7641
    1-800-548-4725

File Formats

    "Understanding and Using COFF"
    The COFF file format, used for .obj files under unix and NT operating systems.

    "CV4 Symbolic Debug Information Specification"
    Languages Business Unit, Microsoft

    "Microsoft Object Mapping Specification"
    Languages Business Unit, Microsoft

    "The Microsoft Object Module Format (OMF)"
    Languages Utilities Group, Microsoft

Other Languages


Historical Interest