By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
429,365 Members | 3,095 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 429,365 IT Pros & Developers. It's quick & easy.

What is the advantage of C?

P: n/a
Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?

And what are its disadvantages?

Oct 8 '06 #1
Share this Question
Share on Google+
50 Replies


P: n/a
"lovecreatesbea...@gmail.com" <lo***************@gmail.comwrote in message
news:11*********************@i42g2000cwa.googlegro ups.com...
Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?

And what are its disadvantages?
C will get you women.
Might be a disadvantage if you are in fact a woman and not lesbian but it is
the general consensus that C gets you lots of women
Oct 8 '06 #2

P: n/a

"Serve Laurijssen" <se*@n.tkwrote in message
news:eg**********@news5.zwoll1.ov.home.nl...
"lovecreatesbea...@gmail.com" <lo***************@gmail.comwrote in
message
news:11*********************@i42g2000cwa.googlegro ups.com...
Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?

And what are its disadvantages?

C will get you women.
Might be a disadvantage if you are in fact a woman and not lesbian but it
is
the general consensus that C gets you lots of women
May also be a problem if in fact you are a gay male and don't want a women
either....
>

Oct 8 '06 #3

P: n/a
"lovecreatesbea...@gmail.com" <lo***************@gmail.comwrote in message
news:11*********************@i42g2000cwa.googlegro ups.com...
Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?

And what are its disadvantages?
P.S. just stick:-

"What is the advantage of C language?"

into google. Plenty of hist and info...
Oct 8 '06 #4

P: n/a
lovecreatesbea...@gmail.com said:
Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are?
C has the same advantage as strawberry ripple ice cream. It exists.

Some people prefer other flavours. Some people like several different
flavours. Some people even like to mix their flavours together.

The most important thing about C is its Cness. For people who like it, it's
exactly the right taste, with just that tang, and just that zest.

Some people want to change the flavour of C, because it doesn't taste like
the flavour they like best. This is like demanding that strawberry ripple
should taste more chocolate-chip; i.e. stupid.
What are its pleasant,
expressive and versatile characteristics?
Partly the strawberryness and the ripplosity, partly the cold, and partly
the creamitude.
And what are its disadvantages?
It isn't chocolate-chip. (And so what?)

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 8 '06 #5

P: n/a

"lovecreatesbea...@gmail.com" <lo***************@gmail.comwrote in message
news:11*********************@i42g2000cwa.googlegro ups.com...
Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?

And what are its disadvantages?
The most important advantage is that a C compiler exists for almost every
platform in existence. There is also a huge body of code.
It is about the "cleanest" of all the high level so-called second-generation
languages. It has enough syntax to make programs readable, but no more.

The main disadvantage is that there is no support for object-orientation. If
you want to use OO really you have to use another language like java or C++.
The other disadvantage is so-called "undefined behaviour". It would be
possible to define the result of every illegal operation as terminating the
program with an error message, but this wasn't done for efficiency reasons.
Which means that a buffer overrun could cause the wrong output rather than a
segmentation fault. If input is cleverly constructed, it could even cause
malicious code to be executed.
--
www.personal.leeds.ac.uk/~bgy1mm
freeware games to download.
Oct 8 '06 #6

P: n/a
lovecreatesbea...@gmail.com wrote:
Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?
It's well tested, extensively ported and concise. It's close enough to
the machine to let you write efficient code, (provided you're on your
toes), but abstracted enough to be very portable. It's relatively terse
syntax appeals to many programmers. IMHO, it has remained the best
choice of language for the purpose for which it was originally designed
- constructing system software.
And what are its disadvantages?
The answer to this question would be highly subjective and variable.
Personally I feel that C is done a disservice by it's preprocessor
language. It's about time it was improved.

Oct 8 '06 #7

P: n/a
Richard Heathfield wrote:
lovecreatesbea...@gmail.com said:
>Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are?

C has the same advantage as strawberry ripple ice cream. It exists.

Some people prefer other flavours. Some people like several different
flavours. Some people even like to mix their flavours together.

The most important thing about C is its Cness. For people who like it,
it's exactly the right taste, with just that tang, and just that zest.
Before C became standardized and included prototypes, I couldn't
stand it at all. The original K&R flavor was much too error prone.

--
Some informative links:
<news:news.announce.newusers
<http://www.geocities.com/nnqweb/>
<http://www.catb.org/~esr/faqs/smart-questions.html>
<http://www.caliburn.nl/topposting.html>
<http://www.netmeister.org/news/learn2quote.html>
<http://cfaj.freeshell.org/google/>
Oct 8 '06 #8

P: n/a
Malcolm wrote:
"lovecreatesbea...@gmail.com" <lo***************@gmail.comwrote:
>Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?

And what are its disadvantages?

The most important advantage is that a C compiler exists for almost
every platform in existence. There is also a huge body of code.
It is about the "cleanest" of all the high level so-called
second-generation languages. It has enough syntax to make programs
readable, but no more.
Actually it is neither as clean nor as portable as Pascal. However
it is significantly more flexible, and as you said, compilers exist
for practically every system.

I would much rather create, from scratch, a Pascal system than a C
system. Today this is not necessary, because of basically portable
compilers such as gcc. As a very rough measure of compiler
complexity needed, compare the size of the Pascal standard with
that of the C standard. And don't even mention C++.

--
Some informative links:
<news:news.announce.newusers
<http://www.geocities.com/nnqweb/>
<http://www.catb.org/~esr/faqs/smart-questions.html>
<http://www.caliburn.nl/topposting.html>
<http://www.netmeister.org/news/learn2quote.html>
<http://cfaj.freeshell.org/google/>
Oct 8 '06 #9

P: n/a
santosh wrote:
lovecreatesbea...@gmail.com wrote:
.... snip ...
>
>And what are its disadvantages?

The answer to this question would be highly subjective and variable.
Personally I feel that C is done a disservice by it's preprocessor
language. It's about time it was improved.
Fundamentally impossible, due to the strictures of the great god
"backward compatibility".

--
Some informative links:
<news:news.announce.newusers
<http://www.geocities.com/nnqweb/>
<http://www.catb.org/~esr/faqs/smart-questions.html>
<http://www.caliburn.nl/topposting.html>
<http://www.netmeister.org/news/learn2quote.html>
<http://cfaj.freeshell.org/google/>
Oct 8 '06 #10

P: n/a
"CBFalconer" <cb********@yahoo.comwrote in message
Malcolm wrote:
>"lovecreatesbea...@gmail.com" <lo***************@gmail.comwrote:
>>Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?

And what are its disadvantages?

The most important advantage is that a C compiler exists for almost
every platform in existence. There is also a huge body of code.
It is about the "cleanest" of all the high level so-called
second-generation languages. It has enough syntax to make programs
readable, but no more.

Actually it is neither as clean nor as portable as Pascal. However
it is significantly more flexible, and as you said, compilers exist
for practically every system.

I would much rather create, from scratch, a Pascal system than a C
system. Today this is not necessary, because of basically portable
compilers such as gcc. As a very rough measure of compiler
complexity needed, compare the size of the Pascal standard with
that of the C standard. And don't even mention C++.
Pascal decided to pretend that the machine doesn't work in binary.
It is very easy to build a Turing tarpit. For instnace, if you go to my
website you can download a little program called "cellular automaton". In
theory, and given the limits of its screen, it can compute any computable
function.
Some day I will get round to writing a little routine for it to add two
numbers together. In practise, that is about the limit that you will be able
to achieve with it.
--
www.personal.leeds.ac.uk/~bgy1mm
freeware games to download.

Oct 8 '06 #11

P: n/a

"CBFalconer" <cb********@yahoo.comwrote in message
news:45***************@yahoo.com...
Richard Heathfield wrote:
>lovecreatesbea...@gmail.com said:
>>Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are?

C has the same advantage as strawberry ripple ice cream. It exists.

Some people prefer other flavours. Some people like several different
flavours. Some people even like to mix their flavours together.

The most important thing about C is its Cness. For people who like it,
it's exactly the right taste, with just that tang, and just that zest.

Before C became standardized and included prototypes, I couldn't
stand it at all. The original K&R flavor was much too error prone.
C has always been the least bad programming language.
There probably is a way to tell a computer what to do, simply, clearly and
without any real possibility of error, but we haven't found it. Experiments
are interesting, but have tended to make the problems worse.
--
www.personal.leeds.ac.uk/~bgy1mm
freeware games to download.
Oct 8 '06 #12

P: n/a

"CBFalconer" <cb********@yahoo.comwrote in message
news:45***************@yahoo.com...
Actually it is neither as clean nor as portable as Pascal. However
it is significantly more flexible, and as you said, compilers exist
for practically every system.

I would much rather create, from scratch, a Pascal system than a C
system. Today this is not necessary, because of basically portable
compilers such as gcc. As a very rough measure of compiler
complexity needed, compare the size of the Pascal standard with
that of the C standard. And don't even mention C++.
I learned Pascal years ago and have followed the Wirth languages Modula-2
Oberon - very interesting - i like Wirth's minimalist philosophy but he is
developing in isolation - the only trouble is that any operating systems
that matters are written in C (or C++).
Oct 8 '06 #13

P: n/a
Paul Connolly wrote:
"CBFalconer" <cb********@yahoo.comwrote in message
>Actually it is neither as clean nor as portable as Pascal. However
it is significantly more flexible, and as you said, compilers exist
for practically every system.

I would much rather create, from scratch, a Pascal system than a C
system. Today this is not necessary, because of basically portable
compilers such as gcc. As a very rough measure of compiler
complexity needed, compare the size of the Pascal standard with
that of the C standard. And don't even mention C++.

I learned Pascal years ago and have followed the Wirth languages
Modula-2 Oberon - very interesting - i like Wirth's minimalist
philosophy but he is developing in isolation - the only trouble is
that any operating systems that matters are written in C (or C++).
I think Wirth went wrong in eliminating i/o from the language when
advancing to Modula from Pascal. The change did add a measure of
flexibility, but made programming much less natural. The
advantages of the pseudo-variadic write/read in Pascal are many.
It produces the flexibility of variadic functions without the
insecurities. In some ways the stream i/o of C++ is a return to
that, but with much less clarity. In this respect Modula and C are
very similar.

--
"The mere formulation of a problem is far more often essential
than its solution, which may be merely a matter of mathematical
or experimental skill. To raise new questions, new possibilities,
to regard old problems from a new angle requires creative
imagination and and marks real advances in science."
-- Albert Einstein
Oct 9 '06 #14

P: n/a
CBFalconer said:
Richard Heathfield wrote:
>lovecreatesbea...@gmail.com said:
>>Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are?

C has the same advantage as strawberry ripple ice cream. It exists.

Some people prefer other flavours. Some people like several different
flavours. Some people even like to mix their flavours together.

The most important thing about C is its Cness. For people who like it,
it's exactly the right taste, with just that tang, and just that zest.

Before C became standardized and included prototypes, I couldn't
stand it at all. The original K&R flavor was much too error prone.
I have but rarely tasted that language, and I don't like the taste at all.
But there will be some who liked that flavour, and are sorry to see it go.
And, even without liking it, I too am sorry to see it go, for our diversity
is diminished by its passing.

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 9 '06 #15

P: n/a

David Wade wrote:
"Serve Laurijssen" <se*@n.tkwrote in message
news:eg**********@news5.zwoll1.ov.home.nl...
C will get you women.
Might be a disadvantage if you are in fact a woman and not lesbian but it
is
the general consensus that C gets you lots of women
May also be a problem if in fact you are a gay male and don't want a women
either....
Are you saying this is implementation dependent?

Oct 9 '06 #16

P: n/a
CBFalconer <cb********@yahoo.comwrites:
[...]
I think Wirth went wrong in eliminating i/o from the language when
advancing to Modula from Pascal. The change did add a measure of
flexibility, but made programming much less natural. The
advantages of the pseudo-variadic write/read in Pascal are many.
It produces the flexibility of variadic functions without the
insecurities. In some ways the stream i/o of C++ is a return to
that, but with much less clarity. In this respect Modula and C are
very similar.
The ideal solution, I think, is to design a language so the I/O
statements have the same ease of use as Pascal, *but* are defined as
ordinary library routines without using any special-case language
features.

C does this with printf(), but only by giving up type checking.
(Other languages do various other off-topic things.)

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <* <http://users.sdsc.edu/~kst>
We must do something. This is something. Therefore, we must do this.
Oct 9 '06 #17

P: n/a

"lovecreatesbea...@gmail.com" <lo***************@gmail.comwrote in message
news:11*********************@i42g2000cwa.googlegro ups.com...
Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?
This is a history lesson from my personal experiences. Despite it being a
bit long, I hope you take the time to read it.

I've programmed in a number of languages: C, PL/1, 6502 assembly, x86
assembly, FORTH, Pascal, Fortan, BASIC, etc.(fourteen total). I haven't
experienced newer languages like C++, PHP, Java, etc., or object oriented
ones: C++, Smalltalk. Given that, two of the things I value most in a
language are: 1) ease of programming and 2) pointers (which correspond to
addresses in assembly). Most of the languages I've experienced, fail both
of those. The exceptions are: C, PL/1 (or PL/I), FORTH and, perhaps, Pascal
(today).

PL/1, a precursor to Pascal, was basically Pascal (with pointers, like C),
and record structures that were supposedly based on COBOL. One big
difference was that variables were passed by reference. This _greatly_
eased programming. In hundreds of thousands of lines of code I wrote, there
were only two situations where I had to tell the compiler to pass by value.
Unlike C, one (basically) never had to be concerned about whether you were
passing in a value or an pointer to a function or procedure... Strings were
a fundamental type, but due to the way they were implemented for the machine
I programmed, I still viewed them as problematic.

FORTH is syntax free and not usually taught in academic settings. The
biggest problems are that 1) you have to think in terms of objects on the
stack like assembly, 2) you have to learn RPN, 3) the default words are
somewhat cryptic if you don't know assembly, and 4) you can't usually
generate compiled code. The last one is a big disadvantage. It's
interpreted like BASIC, so development is quick. That is an advantage.

Assembly can be trying, because there usually isn't an easy method to create
named variables or larger data types likes structures. In assembly,
everything is referenced by register name or memory address. So, where is
my loop counter? Did I put it in eax, esi, memory, zero page (6502
reference...)... Did it get relocated or saved by the linked C code?

FORTRAN, as I experienced it, which was a few decades ago, was a complete
****ing nightmare. The only thing good about it was that numerical results
were accurate... Otherwise, I can't say anything good about it at all.
Hopefully, Fortran has been heavily modified since then.

Pascal, when I learned it, had limited pointer functionality. It was an
example of safe programming practices like Java. For the most part, the
language was easy to learn but didn't seem powerful (which I attribute to
the lack of actual pointers and inability to access the OS). Apparently, a
more complete type of pointer was added in the early '90's with a new
standard.

BASIC had the easiest method of string manipulation. This is the thing I
remember the most about BASIC. It was so easy, that I usually create the
MID$,LEFT$,RIGHT$, and a concatenation function when I'm programming in
languages other than C. C has less easy to use duplicate funtionality. The
other thing I remember is how much quicker it was to test and develop
programs. Compiling and running C over, and over again, is much slower.

As for C, it isn't as easy as Pascal, it can't do strings as easy as BASIC,
it is slower to develop in than BASIC or FORTH, it can't pass data as easy
as PL/1, but it captures the abilities of most early CPU's and modern RISC
CPU's. It's real strength is the closeness of it's featureset to assembly
language, named variables, and pointers. It's not that it's standardized or
somewhat portable or whatever excuse the others here want to promote.
And what are its disadvantages?
In addition to what I mentioned above,

1) There is no way to determine from a pointer in C what data it is pointing
to. You can point it to one variable and then reuse it to point into the
middle of another. This can cause programming errors and prevents
optimizations by the C compiler. (Yes, unfortunately, one of my preferred
language features is a hindrance to compiler advancement.)

2) C is frequently implemented using a single stack. This means that flow
control information (if, while, procedures, etc.) is stored on the same
stack as data. This allows for various stack overflow/underflow exploits or
programmer error.

etc...
Rod Pemberton
Oct 9 '06 #18

P: n/a
Richard Heathfield wrote:
>
CBFalconer said:
Richard Heathfield wrote:
lovecreatesbea...@gmail.com said:

Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are?

C has the same advantage as strawberry ripple ice cream. It exists.

Some people prefer other flavours. Some people like several different
flavours. Some people even like to mix their flavours together.

The most important thing about C is its Cness. For people who like it,
it's exactly the right taste, with just that tang, and just that zest.
Before C became standardized and included prototypes, I couldn't
stand it at all. The original K&R flavor was much too error prone.

I have but rarely tasted that language, and I don't like the taste at all.
But there will be some who liked that flavour, and are sorry to see it go.
And, even without liking it, I too am sorry to see it go, for our diversity
is diminished by its passing.
Amen! <IMHOC is supposed to be a sharp and incisive tool. One
must be careful in using C lest one wound oneself badly. This
will foster care and thoughtfulness in those who use it...others
can get only pain from it. </IMHO>

--
+----------------------------------------------------------------+
| Charles and Francis Richmond richmond at plano dot net |
+----------------------------------------------------------------+
Oct 9 '06 #19

P: n/a
CBFalconer wrote:
>
Malcolm wrote:
"lovecreatesbea...@gmail.com" <lo***************@gmail.comwrote:
Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?

And what are its disadvantages?
The most important advantage is that a C compiler exists for almost
every platform in existence. There is also a huge body of code.
It is about the "cleanest" of all the high level so-called
second-generation languages. It has enough syntax to make programs
readable, but no more.

Actually it is neither as clean nor as portable as Pascal. However
it is significantly more flexible, and as you said, compilers exist
for practically every system.
The flexibility of C is preciesly what makes it dangerous. Pascal will
protect you in many ways, but C says "If you want to shoot yourself
in the foot, here, let me load the gun for you." Thus you must be
careful and do more thinking about what you are doing in C.
I would much rather create, from scratch, a Pascal system than a C
system. Today this is not necessary, because of basically portable
compilers such as gcc.
The Pascal compilers I have seen the source for (PASCAL4 and PASCALS)
are recursive decent parsers, which is a straghtforward and clear
way to parse. ISTM that C can be implemented with recursive decent,
with some fix-ups...but most C compilers use stronger parsing methods.
As a very rough measure of compiler
complexity needed, compare the size of the Pascal standard with
that of the C standard.
ISTM that the C standard could be shorted by 80% if all the special
cases were eliminated. These cases were introduced to allow some
odd-ball implementations to squeak in under the standards fence.
For instance, just say "NULL is always 0". If you can *not* implement
NULL this way, go home and think about how to fix *your* implementation,
*not* change the standard.
And don't even mention C++.
IMHO C++ is *not* a language, it is an abomination. I have heard it
said that C is a sailboat and C++ is the Queen Mary. C++ is object
oriented, but it forces the programmer to create all the underpinnings
that support things. Compare C++ to any other object oriented
language and you will see what I mean.
--
+----------------------------------------------------------------+
| Charles and Francis Richmond richmond at plano dot net |
+----------------------------------------------------------------+
Oct 9 '06 #20

P: n/a

"David Wade" <g8***@yahoo.comwrote in message
news:6t******************************@eclipse.net. uk...
>C will get you women.
Might be a disadvantage if you are in fact a woman and not lesbian but it
is
>the general consensus that C gets you lots of women
May also be a problem if in fact you are a gay male and don't want a women
either....
in my mind gay men dont exist (slightly OT)
Oct 9 '06 #21

P: n/a
Charles Richmond <ri******@comcast.netwrites:
[...]
ISTM that the C standard could be shorted by 80% if all the special
cases were eliminated. These cases were introduced to allow some
odd-ball implementations to squeak in under the standards fence.
For instance, just say "NULL is always 0". If you can *not* implement
NULL this way, go home and think about how to fix *your* implementation,
*not* change the standard.
I don't see how specifying the representation of a null pointer would
shorten the standard significantly.

What *would* shorten the standard would be to drastically simplify the
concept of null pointer constants. Drop the stuff about special-case
conversion of an integer constant expression with value 0. Add a new
keyword, say "nil" or "null", and make it the *only* valid null
pointer constant. Don't bother specifying how null pointers are
represented. (This is basically what Pascal and Ada do. Programmers
in those languages don't care how null pointers are represented, only
that they compare equal to null pointers and unequal to non-null
pointers.)

This wouldn't shorten the standard by a whole lot, but it would
certainly shorten section 5 of the comp.lang.c FAQ.

Of course it's not possible to do this without breaking existing code,
so it will never happen.

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <* <http://users.sdsc.edu/~kst>
We must do something. This is something. Therefore, we must do this.
Oct 9 '06 #22

P: n/a
sq****@postmaster.co.uk wrote:
David Wade wrote:
>"Serve Laurijssen" <se*@n.tkwrote in message
news:eg**********@news5.zwoll1.ov.home.nl...
>>C will get you women.
Might be a disadvantage if you are in fact a woman and not lesbian but it
is
>>the general consensus that C gets you lots of women
May also be a problem if in fact you are a gay male and don't want a women
either....

Are you saying this is implementation dependent?
No, orientation dependent. :-)

--
Joe Wright
"Everything should be made as simple as possible, but not simpler."
--- Albert Einstein ---
Oct 9 '06 #23

P: n/a
Serve Laurijssen wrote:
"David Wade" <g8***@yahoo.comwrote in message
news:6t******************************@eclipse.net. uk...
>>C will get you women.
Might be a disadvantage if you are in fact a woman and not lesbian but it
is
>>the general consensus that C gets you lots of women
May also be a problem if in fact you are a gay male and don't want a women
either....

in my mind gay men dont exist (slightly OT)

What's your take on Truman Capote and Elton John?

--
Joe Wright
"Everything should be made as simple as possible, but not simpler."
--- Albert Einstein ---
Oct 9 '06 #24

P: n/a
CBFalconer wrote:
Before C became standardized and included prototypes, I couldn't
stand it at all. The original K&R flavor was much too error prone.
It was sort of like rock climbing without underwear. Risky, but fun.
And just a bit deviant.

:-)

Hey, and it may even get you women....
Oct 9 '06 #25

P: n/a
Joe Wright <jo********@comcast.netwrites:
Serve Laurijssen wrote:
>"David Wade" <g8***@yahoo.comwrote in message
news:6t******************************@eclipse.net .uk...
>>>C will get you women. Might be a disadvantage if you are in fact
a woman and not lesbian but it is the general consensus that C
gets you lots of women

May also be a problem if in fact you are a gay male and don't want a women
either....
in my mind gay men dont exist (slightly OT)
What's your take on Truman Capote and Elton John?
This runs a considerable risk of turning into a lengthy and heated
discussion of something that has absolutely nothing to do with C.
Let's drop it now. If you want to talk about Truman Capote and Elton
John, please do it in private e-mail or in a more appropriate
newsgroup.

--
Keith Thompson (The_Other_Keith) ks***@mib.org <http://www.ghoti.net/~kst>
San Diego Supercomputer Center <* <http://users.sdsc.edu/~kst>
We must do something. This is something. Therefore, we must do this.
Oct 9 '06 #26

P: n/a
Keith Thompson wrote:
Joe Wright <jo********@comcast.netwrites:
>Serve Laurijssen wrote:
>>"David Wade" <g8***@yahoo.comwrote in message
news:6t******************************@eclipse.ne t.uk...
C will get you women. Might be a disadvantage if you are in fact
a woman and not lesbian but it is the general consensus that C
gets you lots of women
>
May also be a problem if in fact you are a gay male and don't want a women
either....
in my mind gay men dont exist (slightly OT)
What's your take on Truman Capote and Elton John?

This runs a considerable risk of turning into a lengthy and heated
discussion of something that has absolutely nothing to do with C.
Let's drop it now. If you want to talk about Truman Capote and Elton
John, please do it in private e-mail or in a more appropriate
newsgroup.
OK, I can't resist.... Alan Turing didn't exist either... So ultimately
neither does C. (Ducking...)
Oct 9 '06 #27

P: n/a

CBFalconer wrote:
Malcolm wrote:
"lovecreatesbea...@gmail.com" <lo***************@gmail.comwrote:
Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?

And what are its disadvantages?
The most important advantage is that a C compiler exists for almost
every platform in existence. There is also a huge body of code.
It is about the "cleanest" of all the high level so-called
second-generation languages. It has enough syntax to make programs
readable, but no more.

Actually it is neither as clean nor as portable as Pascal. However
it is significantly more flexible, and as you said, compilers exist
for practically every system.

I would much rather create, from scratch, a Pascal system than a C
system. Today this is not necessary, because of basically portable
compilers such as gcc. As a very rough measure of compiler
complexity needed, compare the size of the Pascal standard with
that of the C standard. And don't even mention C++.
The Pascal standard is toooo short.
The C++ standard is toooo long.
The C standard is just right.

-William Hughes

Oct 10 '06 #28

P: n/a
William Hughes said:

<snip>
The Pascal standard is toooo short.
The C++ standard is toooo long.
The C standard is just right.
Who's been sleeping in /my/ porridge?

--
Richard Heathfield
"Usenet is a strange place" - dmr 29/7/1999
http://www.cpax.org.uk
email: rjh at above domain (but drop the www, obviously)
Oct 10 '06 #29

P: n/a
In article <eg**********@main.corriga.net>,
Rod Pemberton <do*********@bitfoad.cmmwrote:
>PL/1, a precursor to Pascal, was basically Pascal (with pointers, like C),
and record structures that were supposedly based on COBOL. One big
difference was that variables were passed by reference.
Note that Wirth's "Recollections about the Development of Pascal"
makes no mention at all of PL/I. Wirth was much involved in the
Working Group to produce a successor to Algol 60, submitted
a proposal that was not adopted, but which he wrote anyhow and called
Algol W. That turned out to have a lot of baggage so he decided
to create a new language based upon the important points of the
Algol discussions but emphasizing ease of analysis and emphasizing
practical implementations: Pascal.

Wirth does not in any way hint that he had PL/I in mind (and
some of the important discussions started before PL/I was released).

Thus, I would say using the word "precursor" would be a misnomer,
as would be saying that PL/I "was basically Pascal". Convergant
evolution, perhaps.

http://www.hansotten.com/pascalwirthhistory.html
--
There are some ideas so wrong that only a very intelligent person
could believe in them. -- George Orwell
Oct 10 '06 #30

P: n/a
Joe Wright wrote:
sq****@postmaster.co.uk wrote:
>David Wade wrote:
>>"Serve Laurijssen" <se*@n.tkwrote in message
news:eg**********@news5.zwoll1.ov.home.nl...
C will get you women.
Might be a disadvantage if you are in fact a woman and not lesbian
but it
is
the general consensus that C gets you lots of women

May also be a problem if in fact you are a gay male and don't want a
women
either....

Are you saying this is implementation dependent?
No, orientation dependent. :-)
So it is an Endian thing?
Oct 10 '06 #31

P: n/a

"Walter Roberson" <ro******@ibd.nrc-cnrc.gc.cawrote in message
news:eg**********@canopus.cc.umanitoba.ca...
In article <eg**********@main.corriga.net>,
Rod Pemberton <do*********@bitfoad.cmmwrote:
PL/1, a precursor to Pascal, was basically Pascal (with pointers, like
C),
and record structures that were supposedly based on COBOL. One big
difference was that variables were passed by reference.

Note that Wirth's "Recollections about the Development of Pascal"
makes no mention at all of PL/I. Wirth was much involved in the
Working Group to produce a successor to Algol 60, submitted
a proposal that was not adopted, but which he wrote anyhow and called
Algol W. That turned out to have a lot of baggage so he decided
to create a new language based upon the important points of the
Algol discussions but emphasizing ease of analysis and emphasizing
practical implementations: Pascal.

Wirth does not in any way hint that he had PL/I in mind (and
some of the important discussions started before PL/I was released).

Thus, I would say using the word "precursor" would be a misnomer,
as would be saying that PL/I "was basically Pascal". Convergant [sic]
evolution, perhaps.
Precursor simply means to precede, i.e., to come before. This usually
refers to chronological time order, not language "descendancy" as you've
implied. PL/1 was created in 1964 before Pascal in 1970. Although, I do
recall reading one article which claimed that Wirth was heavily influenced
by PL/1, but I'm unable to locate it...

"Convergent" would apply to languages created at about the same time, i.e.,
PL/1(1964) and PL360(1965) or Algol-W(1965), not those separated by many
years.

My statement that the PL/1 "was basically Pascal" is correct. I thought
clarified this with "This is a history lesson from my personal experiences",
but, perhaps it needs another more specific clarification. There are a
number of PL/1 dialects. I used the Stratus VOS dialect. I have no
information on it's completeness or accuracy as compared to other PL/I
dialects. If you're interested, you can compare it to other PL/1
implementations using the various PL/1 manuals, links here:

http://home.nycap.rr.com/pflass/plilib.htm

Also, you can look up historical language information on HOPL (History of
Programming Languages). For each language, HOPL shows the contributory and
derivative languages. The BYTE magazine article lists a short history.
And, of course, Wikipedia has lots of info.

http://hopl.murdoch.edu.au
http://www.byte.com/art/9509/sec7/art19.htm

http://www.wikipedia.org
http://www.hansotten.com/pascalwirthhistory.html

Rod Pemberton
Oct 10 '06 #32

P: n/a
Rod Pemberton wrote:
"Walter Roberson" <ro******@ibd.nrc-cnrc.gc.cawrote in message
news:eg**********@canopus.cc.umanitoba.ca...
In article <eg**********@main.corriga.net>,
Rod Pemberton <do*********@bitfoad.cmmwrote:
>PL/1, a precursor to Pascal, was basically Pascal (with pointers, like
C),
>and record structures that were supposedly based on COBOL. One big
>difference was that variables were passed by reference.
Note that Wirth's "Recollections about the Development of Pascal"
makes no mention at all of PL/I. Wirth was much involved in the
Working Group to produce a successor to Algol 60, submitted
a proposal that was not adopted, but which he wrote anyhow and called
Algol W. That turned out to have a lot of baggage so he decided
to create a new language based upon the important points of the
Algol discussions but emphasizing ease of analysis and emphasizing
practical implementations: Pascal.

Wirth does not in any way hint that he had PL/I in mind (and
some of the important discussions started before PL/I was released).

Thus, I would say using the word "precursor" would be a misnomer,
as would be saying that PL/I "was basically Pascal". Convergant [sic]
evolution, perhaps.

Precursor simply means to precede, i.e., to come before.
Precede means to precede, precursor implies some sort of additional
connection.
>From wikipedia:
"A precursor is something that existed before and was incorporated into
something that came later."
>From Merriam Webster:
"one that precedes and indicates the approach of another"

Robert Gamble

Oct 10 '06 #33

P: n/a
In article <eg**********@main.corriga.net>,
Rod Pemberton <do*********@bitfoad.cmmwrote:
>Precursor simply means to precede
Not at all. It has a strong implication of the earlier leading to the
later in some way. The Krakatoa eruption was not a precursor of C99.

-- Richard
Oct 10 '06 #34

P: n/a

"Robert Gamble" <rg*******@gmail.comwrote in message
news:11**********************@k70g2000cwa.googlegr oups.com...
Rod Pemberton wrote:
"Walter Roberson" <ro******@ibd.nrc-cnrc.gc.cawrote in message
news:eg**********@canopus.cc.umanitoba.ca...
In article <eg**********@main.corriga.net>,
Rod Pemberton <do*********@bitfoad.cmmwrote:
>
PL/1, a precursor to Pascal, was basically Pascal (with pointers,
like
C),
and record structures that were supposedly based on COBOL. One big
difference was that variables were passed by reference.
>
Note that Wirth's "Recollections about the Development of Pascal"
makes no mention at all of PL/I. Wirth was much involved in the
Working Group to produce a successor to Algol 60, submitted
a proposal that was not adopted, but which he wrote anyhow and called
Algol W. That turned out to have a lot of baggage so he decided
to create a new language based upon the important points of the
Algol discussions but emphasizing ease of analysis and emphasizing
practical implementations: Pascal.
>
Wirth does not in any way hint that he had PL/I in mind (and
some of the important discussions started before PL/I was released).
>
Thus, I would say using the word "precursor" would be a misnomer,
as would be saying that PL/I "was basically Pascal". Convergant [sic]
evolution, perhaps.
>
Precursor simply means to precede, i.e., to come before.

Precede means to precede, precursor implies some sort of additional
connection.
No. It doesn't imply any such thing. It simply means to precede which, of
course, means that something followed. Here are definitions from three
dictionaries:

1. a person or thing that precedes, as in a job, a method, etc.;
predecessor.
2. a person, animal, or thing that goes before and indicates the approach of
someone or something else

1. One that precedes and indicates, suggests, or announces someone or
something to come:...
2. One that precedes another; a forerunner or predecessor.

1 a : one that precedes and indicates the approach of another b :
PREDECESSOR
2 : a substance, cell, or cellular component from which another substance,
cell, or cellular component is formed
Rod Pemberton
Oct 10 '06 #35

P: n/a

"Richard Tobin" <ri*****@cogsci.ed.ac.ukwrote in message
news:eg**********@pc-news.cogsci.ed.ac.uk...
In article <eg**********@main.corriga.net>,
Rod Pemberton <do*********@bitfoad.cmmwrote:
Precursor simply means to precede

Not at all. It has a strong implication of the earlier leading to the
later in some way. The Krakatoa eruption was not a precursor of C99.
Definitions from three dictionaries contradict that statement. See my post
to Gamble.

RP
Oct 10 '06 #36

P: n/a
In article <eg**********@main.corriga.net>,
Rod Pemberton <do*********@bitfoad.cmmwrote:
>Precursor simply means to precede
>Not at all. It has a strong implication of the earlier leading to the
later in some way. The Krakatoa eruption was not a precursor of C99.
>Definitions from three dictionaries contradict that statement.
What? All those definitions indicated that it implied more than
simple temporal order.

If you think the Krakatoa eruption was not a precursor of C99, you're
talking a different language from me.

-- Richard

Oct 10 '06 #37

P: n/a
Rod Pemberton wrote:

(big quote, sorry chaps)
>
"Robert Gamble" <rg*******@gmail.comwrote in message
news:11**********************@k70g2000cwa.googlegr oups.com...
>Rod Pemberton wrote:
"Walter Roberson" <ro******@ibd.nrc-cnrc.gc.cawrote in message
news:eg**********@canopus.cc.umanitoba.ca...
In article <eg**********@main.corriga.net>,
Rod Pemberton <do*********@bitfoad.cmmwrote:

PL/1, a precursor to Pascal, was basically Pascal (with pointers,
like
C),
and record structures that were supposedly based on COBOL. One big
difference was that variables were passed by reference.

Note that Wirth's "Recollections about the Development of Pascal"
makes no mention at all of PL/I. Wirth was much involved in the
Working Group to produce a successor to Algol 60, submitted
a proposal that was not adopted, but which he wrote anyhow and called
Algol W. That turned out to have a lot of baggage so he decided
to create a new language based upon the important points of the
Algol discussions but emphasizing ease of analysis and emphasizing
practical implementations: Pascal.

Wirth does not in any way hint that he had PL/I in mind (and
some of the important discussions started before PL/I was released).

Thus, I would say using the word "precursor" would be a misnomer,
as would be saying that PL/I "was basically Pascal". Convergant [sic]
evolution, perhaps.
Precursor simply means to precede, i.e., to come before.

Precede means to precede, precursor implies some sort of additional
connection.

No. It doesn't imply any such thing. It simply means to precede which, of
course, means that something followed. Here are definitions from three
dictionaries:

1. a person or thing that precedes, as in a job, a method, etc.;
predecessor.
2. a person, animal, or thing that goes before and indicates the approach of
someone or something else

1. One that precedes and indicates, suggests, or announces someone or
something to come:...
2. One that precedes another; a forerunner or predecessor.

1 a : one that precedes and indicates the approach of another b :
PREDECESSOR
2 : a substance, cell, or cellular component from which another substance,
cell, or cellular component is formed
All three of those entries have the "sort of additional connection" that
Robert Gamble mentioned.

Your reading seems to be one of mere chronology, so that all of
the following would be true:

Lisp is a precursor to Pascal
Fortran is a precursor to Pascal
Algol is a precursor to Pascal
English is a precursor to Pascal
Wuthering Heights is a precursor to Pascal
Special relativity is a precursor to Pascal
Galactic Patrol is a precursor to Pascal
Penicillin is a precursor to Pascal
Charles Darwin is a precursor to Pascal
The Second World War is a precursor to Pascal
Radar is a precursor to Pascal

I don't think that's how the word is usually used.

--
Chris "Essen -9 and counting" Dollin
"Our future looks secure, but it's all out of our hands"
- Magenta, /Man and Machine/

Oct 10 '06 #38

P: n/a
Rod Pemberton wrote:
"Robert Gamble" <rg*******@gmail.comwrote in message
news:11**********************@k70g2000cwa.googlegr oups.com...
Rod Pemberton wrote:
"Walter Roberson" <ro******@ibd.nrc-cnrc.gc.cawrote in message
news:eg**********@canopus.cc.umanitoba.ca...
In article <eg**********@main.corriga.net>,
Rod Pemberton <do*********@bitfoad.cmmwrote:

>PL/1, a precursor to Pascal, was basically Pascal (with pointers,
like
C),
>and record structures that were supposedly based on COBOL. One big
>difference was that variables were passed by reference.

Note that Wirth's "Recollections about the Development of Pascal"
makes no mention at all of PL/I. Wirth was much involved in the
Working Group to produce a successor to Algol 60, submitted
a proposal that was not adopted, but which he wrote anyhow and called
Algol W. That turned out to have a lot of baggage so he decided
to create a new language based upon the important points of the
Algol discussions but emphasizing ease of analysis and emphasizing
practical implementations: Pascal.

Wirth does not in any way hint that he had PL/I in mind (and
some of the important discussions started before PL/I was released).

Thus, I would say using the word "precursor" would be a misnomer,
as would be saying that PL/I "was basically Pascal". Convergant [sic]
evolution, perhaps.

>
Precursor simply means to precede, i.e., to come before.
Precede means to precede, precursor implies some sort of additional
connection.

No. It doesn't imply any such thing. It simply means to precede which, of
course, means that something followed. Here are definitions from three
dictionaries:
Why did you snip the sourced definitions that I provided?
1. a person or thing that precedes, as in a job, a method, etc.;
predecessor.
2. a person, animal, or thing that goes before and indicates the approach of
someone or something else

1. One that precedes and indicates, suggests, or announces someone or
something to come:...
2. One that precedes another; a forerunner or predecessor.

1 a : one that precedes and indicates the approach of another b :
PREDECESSOR
2 : a substance, cell, or cellular component from which another substance,
cell, or cellular component is formed
What do you think the phrases "and indicates the approach of someone or
something else", "and indicates, suggests, or announces someone or
something to come", and "and indicates the approach of another" mean
exactly?

Robert Gamble

Oct 10 '06 #39

P: n/a
Rod Pemberton wrote:
"Richard Tobin" <ri*****@cogsci.ed.ac.ukwrote in message
news:eg**********@pc-news.cogsci.ed.ac.uk...
In article <eg**********@main.corriga.net>,
Rod Pemberton <do*********@bitfoad.cmmwrote:
>Precursor simply means to precede
Not at all. It has a strong implication of the earlier leading to the
later in some way. The Krakatoa eruption was not a precursor of C99.

Definitions from three dictionaries contradict that statement. See my post
to Gamble.
The name is Robert Gamble and perhaps you should reread the definitions
in that post.

Robert Gamble

Oct 10 '06 #40

P: n/a
Robert Gamble <rg*******@gmail.comwrote:

(WRT the definition of the word "precursor":)
1. a person or thing that precedes, as in a job, a method, etc.;
predecessor.
Robert, I think this definition, which Rod took directly from
dictionary.com, is a pretty clear indication that his use of the word
"precursor" was correct, although of course had he used "predecessor"
we could have avoided yet another descent into semantic pedantry
concerning a language other than C.

(FWIW, I admit that I was surprised that Rod's use of the word was
appropriate.)
What do you think the phrases "and indicates the approach of someone or
something else", "and indicates, suggests, or announces someone or
something to come", and "and indicates the approach of another" mean
exactly?
"Precursor" certainly has those meanings, as well, but using it
without intending those meanings is correct, as far as dictionary.com
is concerned.

--
C. Benson Manica | I *should* know what I'm talking about - if I
cbmanica(at)gmail.com | don't, I need to know. Flames welcome.
Oct 10 '06 #41

P: n/a
I don't think that's how the word is usually used.

Wittgenstein argued that words have uses - and they don't have meanings - in
his later work "Philosophical Investigations" - I have a lot of time for
that idea for the way the people use everyday language - his early work
"Tractatus Logico-Philosophicus" tried to put language on the same level as
mathematical logic (hahahhahah) - he gave up on that silly idea.
Oct 10 '06 #42

P: n/a

"Neil" <Ne*******@worldnet.att.netwrote in message
news:ky*******************@bgtnsc04-news.ops.worldnet.att.net...
>>Are you saying this is implementation dependent?
No, orientation dependent. :-)
So it is an Endian thing?
little endian, big endian we might be on to something here
Oct 10 '06 #43

P: n/a

"Rod Pemberton" <do*********@bitfoad.cmmwrote in message
news:eg**********@main.corriga.net...
<snip>
No. It doesn't imply any such thing. It simply means to precede which,
of
course, means that something followed. Here are definitions from three
dictionaries:

1. a person or thing that precedes, as in a job, a method, etc.;
predecessor.
2. a person, animal, or thing that goes before and indicates the approach
of
someone or something else

1. One that precedes and indicates, suggests, or announces someone or
something to come:...
2. One that precedes another; a forerunner or predecessor.

1 a : one that precedes and indicates the approach of another b :
PREDECESSOR
2 : a substance, cell, or cellular component from which another substance,
cell, or cellular component is formed
We cannot use words like expressions in mathematics or programming
languages:

How do dictionaries define a word?
Let's keep a list of the undefined words - add our first word (the one we
are looking up in the dictionary) to the list of undefined words - ok follow
each of the definitions of those words, and all the words that are used in
their definitions -
either
definitions are self referential (i.e. they refer to a word in our list of
undefined words)
or
they are defined in a number(>=1) of different words - let's add those
words to our list of undefined words - so the number of undefined words
increases by at least one
or
the word is not defined

Since the number of words in a dictionary is finite and, without self
reference the number of words involved in the definition of a word is
increasing, so there must eventually be some reference to an undefined word
in our list of undefined words, or a reference to a word that is not defined
in the dictionary.

so if you strive to find meaning in the dictionary definition of a word then
a word depends on its own meaning, or depends on a word that depends on its
own meaning, or it is depends on an undefined word.

either that of I've taken too much LSD.
Oct 10 '06 #44

P: n/a

"CptDondo" <ya*@NsOeSiPnAeMr.comwrote in message
news:12*************@corp.supernews.com...
>
OK, I can't resist.... Alan Turing didn't exist either... So ultimately
neither does C. (Ducking...)
surely, like all mathematics, it would have been invented* by someone
sometime - gayness is irrelevent to mathematical invention - given that, it
is hard to think of a straight man coming up with "Bohemian Rhapsody"

invented* - I don't go along with the Platonic idea of mathematics that the
truth-is-out-there to be discovered - mathematics is a construction of the
mind.
Oct 10 '06 #45

P: n/a
that isn't quite right you eejit Connolly - you need to keep a list of the
words that have been looked up, and the list of words that have not been
looked up - if a word hasn't been looked up then you can't assume
self-reference of definition just yet (you need to expand the definition of
the un-looked-up word first)
Oct 10 '06 #46

P: n/a
Keith Thompson wrote:
>
Charles Richmond <ri******@comcast.netwrites:
[...]
ISTM that the C standard could be shorted by 80% if all the special
cases were eliminated. These cases were introduced to allow some
odd-ball implementations to squeak in under the standards fence.
For instance, just say "NULL is always 0". If you can *not* implement
NULL this way, go home and think about how to fix *your* implementation,
*not* change the standard.

I don't see how specifying the representation of a null pointer would
shorten the standard significantly.

What *would* shorten the standard would be to drastically simplify the
concept of null pointer constants. Drop the stuff about special-case
conversion of an integer constant expression with value 0. Add a new
keyword, say "nil" or "null", and make it the *only* valid null
pointer constant. Don't bother specifying how null pointers are
represented. (This is basically what Pascal and Ada do. Programmers
in those languages don't care how null pointers are represented, only
that they compare equal to null pointers and unequal to non-null
pointers.)

This wouldn't shorten the standard by a whole lot, but it would
certainly shorten section 5 of the comp.lang.c FAQ.

Of course it's not possible to do this without breaking existing code,
so it will never happen.
The NULL pointer and exceptions associated therewith...were only an
example. My point is that the C standard is replete with exceptions
to allow strange systems to be standard. ISTM that this comprises
the bulk of the current C standard. I say simplify the standard and
let the strange, non-conforming implementations change to match it.
Old code that is broken...will be broken. It can work under K&R or
something. New code shoule match the standard.

--
+----------------------------------------------------------------+
| Charles and Francis Richmond richmond at plano dot net |
+----------------------------------------------------------------+
Oct 11 '06 #47

P: n/a
lovecreatesbea...@gmail.com wrote:
Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?

And what are its disadvantages?
In my case: job security.

Seriously. None of the new kids seem to know it anymore, so the
shrinking amount of C we have in our shop is pretty much mine to maintain.

Probably not the answer you wanted, but I'm pretty language agnostic. C
can make small, tight object code, and the source can be made
reasonably portable across a variety of platforms. Most of the warts
and problems are well known, so it is easy to avoid common gotchas.

One downside is that subtle bugs can lie in wait for years, ready to
ensnare the unwary.

C hacking is also very sexy, and C coders get all the chicks.
Oct 11 '06 #48

P: n/a
Malcolm wrote:
There probably is a way to tell a computer what to do, simply, clearly and
without any real possibility of error, but we haven't found it.
On the contrary: it is the computers who are simple, clear and without any
real possibility of error, so anything you tell them has to be likewise.
What we're looking for are the least obnoxious ways of adapting our
intuition to the algorithmic world. There's much room for improvement there,
but it is unlikely that it will ever become "simple".

The notion that it should be the other way around is what causes all the
trouble. It is not that computers aren't fit to implement human wishes, but
that humans aren't fit to utilise the computer's potential to do so. New
programming languages will not change that in and of themselves; at best
they allow for more compact expressions of known approaches.

S.
Oct 11 '06 #49

P: n/a
Malcolm wrote:
"lovecreatesbea...@gmail.com" <lo***************@gmail.comwrote in message
news:11*********************@i42g2000cwa.googlegro ups.com...
>Could you extract examples of the characteristics of C itself to
demonstrate what the advantages of C are? What are its pleasant,
expressive and versatile characteristics?

And what are its disadvantages?
The most important advantage is that a C compiler exists for almost every
platform in existence. There is also a huge body of code.
It is about the "cleanest" of all the high level so-called second-generation
languages. It has enough syntax to make programs readable, but no more.

The main disadvantage is that there is no support for object-orientation.
No, the main disadvantage is that there is no support for functional
programming. Well, you have pointers, but no higher-order functions, so
that's useless.

Actually, its support for logic programming is pretty much nonexistent as
well. And have you tried scripting it? Hopeless.

In other words, it's between unfair and pointless to call C's lack of
alternate approaches to programming a disadvantage. Maybe in a few years (or
possibly decades) O-O will have faded away in favor of another paradigm;
will it then be C's disadvantage not to support that?

You could take C to task for its limited and clumsy support for modularity,
which is something O-O languages at least attempt to do better. That doesn't
mean "not being O-O" is itself a disadvantage, though.

S.
Oct 11 '06 #50

50 Replies

This discussion thread is closed

Replies have been disabled for this discussion.