publications.gbdirect.co.uk, 2023-04-06 | Main page
---------------------------------------------------------------------------------------
Saved from web.archive.org, with Lynx.
---------------------------------------------------------------------------------------
   #prev next contents

   IFRAME:
   https://archive.org/includes/donate.php?as_page=1&platform=wb&referer=h
   ttps%3A//web.archive.org/web/20230406050347/https%3A//publications.gbdi
   rect.co.uk//c_book/preface/the_success_of_c.html

   Wayback Machine
   https://publications Go
   113 captures
   25 Jan 2004 - 02 Dec 2023
   Dec              APR  Aug
   Previous capture 06   Next capture
   2022             2023 2024
   success
   fail
   About this capture
   COLLECTED BY
   Collection: Wikipedia Eventstream
   TIMESTAMPS
   loading

   The Wayback Machine -
   https://web.archive.org/web/20230406050347/https://publications.gbdirec
   t.co.uk/c_book/preface/the_success_of_c.html

   GBdirect Homepage Search ____________ Go

   Training | Contact

   About Us | Training | Consultancy | Software | Publications |
   Open Source | Support | Open Standards | FAQ | Jobs

   Publications > The C Book > Preface > The Success of C

                                The Success of C

   C is a remarkable language. Designed originally by one man, Dennis
   Ritchie, working at AT&T Bell Laboratories in New Jersey, it has
   increased in use until now it may well be one of the most
   widely-written computer languages in the world. The success of C is due
   to a number of factors, none of them key, but all of them important.
   Perhaps the most significant of all is that C was developed by real
   practioners of programming and was designed for practical day-to-day
   use, not for show or for demonstration. Like any well-designed tool, it
   falls easily to the hand and feels good to use. Instead of providing
   constraints, checks and rigorous boundaries, it concentrates on
   providing you with power and on not getting in your way.

   Because of this, it's better for professionals than beginners. In the
   early stages of learning to program you need a protective environment
   that gives feedback on mistakes and helps you to get results
   quickly--programs that run, even if they don't do what you meant. C is
   not like that! A professional forester would use a chain-saw to cut
   down trees quickly, aware of the dangers of touching the blade when the
   machine is running; C programmers work in a similar way. Although
   modern C compilers do provide a limited amount of feedback when they
   notice something that is out of the ordinary, you almost always have
   the option of forcing the compiler to do what you said you wanted and
   to stop it from complaining. Provided that what you said you wanted was
   what you really did want, then you'll get the result you expected.
   Programming in C is like eating red meat and drinking strong rum except
   your arteries and liver are more likely to survive it.

   Not only is C popular and a powerful asset in the armoury of the
   serious day-to-day programmer, there are other reasons for the success
   of this language. It has always been associated with the UNIX operating
   system and has benefited from the increasing popularity of that system.
   Although it is not the obvious first choice for writing large
   commercial data processing applications, C has the great advantage of
   always being available on commercial UNIX implementations. UNIX is
   written in C, so whenever UNIX is implemented on a new type of
   hardware, getting a C compiler to work for that system is the first
   task. As a result it is almost impossible to find a UNIX system without
   support for C, so the software vendors who want to target the UNIX
   marketplace find that C is the best bet if they want to get wide
   coverage of the systems available. Realistically, C is the first choice
   for portability of software in the UNIX environment.

   C has also gained substantially in use and availability from the
   explosive expansion of the Personal Computer market. C could almost
   have been designed specifically for the development of software for the
   PC--developers get not only the readability and productivity of a
   high-level language, but also the power to get the most out of the PC
   architecture without having to resort to the use of assembly code. C is
   practically unique in its ability to span two levels of programming; as
   well as providing high-level control of flow, data structures and
   procedures--all of the stuff expected in a modern high-level
   language--it also allows systems programmers to address machine words,
   manipulate bits and get close to the underlying hardware if they want
   to. That combination of features is very desirable in the competitive
   PC software markeplace and an increasing number of software developers
   have made C their primary language as a result.

   Finally, the extensibility of C has contributed in no small way to its
   popularity. Many other languages have failed to provide the file access
   and general input-output features that are needed for
   industrial-strength applications. Traditionally, in these languages I/O
   is built-in and is actually understood by the compiler. A master-stroke
   in the design of C (and interestingly, one of the strengths of the UNIX
   system too) has been to take the view that if you don't know how to
   provide a complete solution to a generic requirement, instead of
   providing half a solution (which invariably pleases nobody), you should
   allow the users to build their own. Software designers the world over
   have something to learn from this! It's the approach that has been
   taken by C, and not only for I/O. Through the use of library functions
   you can extend the language in many ways to provide features that the
   designers didn't think of. There's proof of this in the so-called
   Standard I/O Library (stdio), which matured more slowly than the
   language, but had become a sort of standard all of its own before the
   Standard Committee give it official blessing. It proved that it is
   possible to develop a model of file I/O and associated features that is
   portable to many more systems than UNIX, which is where it was first
   wrought. Despite the ability of C to provide access to low-level
   hardware features, judicious style and the use of the stdio package
   results in highly portable programs; many of which are to be found
   running on top of operating systems that look very different from one
   another. The nice thing about this library is that if you don't like
   what it does, but you have the appropriate technical skills, you can
   usually extend it to do what you do want, or bypass it altogether.

   Previous section | Chapter contents | Next section

   Publications
   The C Book
   Preface
   About This Book
   The Success of C
   Standards
   Hosted and Free-Standing Environments
   Typographical conventions
   Order of topics
   Example programs
   Higher authority
   C standard
   Introduction
   Variables & arithmetic
   Control flow
   Functions
   Arrays & pointers
   Structures
   Preprocessor
   Specialized areas
   Libraries
   Complete Programs
   Answers
   Copyright
     __________________________________________________________________

   Contact Us

   Printer-friendly version

The C Book

   This book is published as a matter of historical interest. Please read
   the copyright and disclaimer information.

   GBdirect Ltd provides up-to-date training and consultancy in C,
   Embedded C, C++ and a wide range of other subjects based on open
   standards if you happen to be interested.
---------------------------------------------------------------------------------------
Saved from web.archive.org, with Lynx.
 
Main page
 
© 2022 Matei. No cookies®