What is the advantage of C?

  • Thread starter lovecreatesbea...
  • Start date
S

Serve Laurijssen

David Wade said:
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)
 
K

Keith Thompson

Charles Richmond said:
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.
 
C

CptDondo

CBFalconer said:
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....
 
K

Keith Thompson

Joe Wright said:
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.
 
C

CptDondo

Keith said:
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...)
 
W

William Hughes

CBFalconer said:
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
 
R

Richard Heathfield

William Hughes said:

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?
 
W

Walter Roberson

Rod Pemberton said:
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
 
R

Rod Pemberton

Walter Roberson said:
Rod Pemberton said:
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


Rod Pemberton
 
R

Robert Gamble

Rod said:
Walter Roberson said:
Rod Pemberton said:
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
 
R

Richard Tobin

Rod Pemberton said:
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
 
R

Rod Pemberton

Robert Gamble said:
Rod said:
Walter Roberson said:
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
 
R

Rod Pemberton

Richard Tobin said:
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
 
R

Richard Tobin

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.
[/QUOTE]
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
 
C

Chris Dollin

Rod Pemberton wrote:

(big quote, sorry chaps)
Robert Gamble said:
Rod said:
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.
 
R

Robert Gamble

Rod said:
Robert Gamble said:
Rod said:
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
 
R

Robert Gamble

Rod said:
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
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,444
Messages
2,571,709
Members
48,796
Latest member
Greg L.
Top