Why C?

B

Bart

I saw Bjarne start with the idea of a better C and
get stuck in an ocean of complexity, that swallowed
him and his intrepid collaborators alive.


C is far simpler than C++ and that can't be a bad thing. Most C++
source I've seen has no need for a code obfuscator..


Bart
 
S

sunil

E. Robert Tisdale said:
You can use C++ for this as well.
C doesn't have any features that C++ doesn't have.

No dear, not at all. Kernel developers are very busy people. They
can't explain you the pros & cons of C and C++. You will have to prove
that C++ can be used to write kernels without flaw (or at least with
same efficiency as C). Only discussing is not the solution. C++
compilers can't stop code bloat and memory interference. C allows us
to use memory independently, C++ doesn't.
They are the same people.
C++ is simply an extension of C.

See the
History of C++

No, mainly Bzarne Stroustrup has written C++ while Dennis Ritchie
wrote the C.
 
M

Mike Wahler

C++
compilers can't stop code bloat and memory interference.

No, they cannot prevent 'code bloat' (I have no idea what
you mean by 'memory interference'), but a programmer can.
With either language, or both.
C allows us
to use memory independently, C++ doesn't.

C++ provides exactly the same control over memory allocation
as does C.

-Mike
 
B

Bjarne Stroustrup

E. Robert Tisdale said:
Dennis Ritchie hired Bjarne Stroustrup.

Correction: I worked in the Bell Labs Computer Science Research Center
with Dennis Ritchie, Ken Thompson, Doug McIlroy, Brian Kernighan,
Steve Johnson, Bob Morris, Sandy Fraser, Greg Chesson, etc., for many
years, but Dennis wasn't a manager when I arrived.

-- Bjarne Stroustrup; http://www.research.att.com/~bs
 
R

Ravi Uday

Bjarne Stroustrup said:
"E. Robert Tisdale" <[email protected]> wrote in message

Correction: I worked in the Bell Labs Computer Science Research Center
with Dennis Ritchie, Ken Thompson, Doug McIlroy, Brian Kernighan,
Steve Johnson, Bob Morris, Sandy Fraser, Greg Chesson, etc., for many
years, but Dennis wasn't a manager when I arrived.

-- Bjarne Stroustrup; http://www.research.att.com/~bs

You have said -

C++ is a general purpose programming language with a bias towards systems
programming that
a.. is a better C
b.. supports data abstraction
c.. supports object-oriented programming
d.. supports generic programming.
Is it real that its biased towards system programming !!

- Ravi
 
S

Skybuck Flying

Old Wolf said:
Surely you are trolling here? There is absolutely nothing that
you can do in Borland Delphi that you can't do in Borland
C++Builder (with the same level of complexity).

You don't get it or your trolling since the whole point is that in C++
Builder you will be confronted with other people's complex c++ junk like
operator overloading just to name one.

In delphi it simply doesn't exist.

LESS IS MORE PRINCIPLE ! ;)

Bye,
Skybuck.
 
F

Flash Gordon

You don't get it or your trolling since the whole point is that in C++
Builder you will be confronted with other people's complex c++ junk
like operator overloading just to name one.

In delphi it simply doesn't exist.

LESS IS MORE PRINCIPLE ! ;)

Well, I am working on some Delphi code which uses multiple inheritance,
overriding methods from ancestor objects, virtual methods, polymorphism
and probably everything apart from operator overloading. It is
sufficiently complex, despite being relatively small, that in some
instances I am finding it almost impossible to work out what code will
be called on a given event.

BTW, the last time I used Borland C++ builder the libraries were the
Delphi libraries with appropriate header files so you could use them
from C++. I doubt that this has changed and it is strong evidence that
you can do anything in Delphi that you can do in C++ Builder.

I've redirected followups to an appropriate group, since this is
completely OT here.
 
E

E. Robert Tisdale

Bjarne said:
Correction: I worked in the Bell Labs Computer Science Research Center
with Dennis Ritchie, Ken Thompson, Doug McIlroy, Brian Kernighan,
Steve Johnson, Bob Morris, Sandy Fraser, Greg Chesson, etc., for many
years, but Dennis wasn't a manager when I arrived.

-- Bjarne Stroustrup; http://www.research.att.com/~bs

Thanks Bjarne.
I didn't mean to make you the subject of this thread.

My understanding was that you were hired (by Bell Labs I suppose)
to design a language to *replace* C and not *compete* with it.
That you were encouraged by and collaborated with
Dennis Ritchie and Brian Kernighan in this new design.
And that C++ extends and subsumes C.
 
D

Dan Pop

In said:
Well, I am working on some Delphi code which uses multiple inheritance,
overriding methods from ancestor objects, virtual methods, polymorphism
and probably everything apart from operator overloading. It is
sufficiently complex, despite being relatively small, that in some
instances I am finding it almost impossible to work out what code will
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
be called on a given event.
^^^^^^^^^^^^^^^^^^^^^^^^^^

It must be really fun to maintain such code. Languages allowing people
to write code that cannot be taken at face value are certainly not for
me.

Dan
 
F

Flash Gordon

Euhm euhm... dude I don't your code.. but have you ever heard of a
debugger and stepping through it ?

Gjez ;)

So where do you put your break point when you don't know which bit of
code will be executed when you hit a key? Answer, you don't oblody know
where to put your break point.

Yes Dan, it is hell. I would never write code like that myself and as
part of the ongoing development I am simplifying it.
 
C

Chris Hills

Flash Gordon said:
So where do you put your break point when you don't know which bit of
code will be executed when you hit a key? Answer, you don't oblody know
where to put your break point.

That is what a trace is for. And conditional break points and triggers.
Also you know what area of code you are intrested in... unless it is
unstructured spegetti.

Mind uyou I am more used to embedded code where the use of an ICE is
standard practice. We use themn for testing as well as debugging.

Regards
Chris



/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\
\/\/\/\/\ Chris Hills Staffs England /\/\/\/\/\
/\/\/ (e-mail address removed) www.phaedsys.org \/\/
\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/
 
F

Flash Gordon

That is what a trace is for. And conditional break points and
triggers. Also you know what area of code you are intrested in...
unless it is unstructured spegetti.

It is a complete mess and in this instance I don't know which bit of
code I am interested in because I can't find it!

Stack traces have proved almost useless.

I'm having to get the program to the right state then gradually add in
more and more break points until I find the right bit.

I'm also removing the needless complexity so that I can find my way
around it.
Mind uyou I am more used to embedded code where the use of an ICE is
standard practice. We use themn for testing as well as debugging.

I used to do embedded SW and a decent ICE give you far better tools for
things like that.
 

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

Forum statistics

Threads
473,796
Messages
2,569,645
Members
45,367
Latest member
Monarch

Latest Threads

Top