OO and C: Still a Good Idea?

X

xyzzybill

Objective C was an attempt to bring Object Orientation to C. At the time if
it's incarnation, the prevailing thought was that OO meant not only objects,
but sending messages to them, probably because of the increasing popularity
of event-driven GUIs at the time. (Note that Smalltalk was another muddling
of the two orthogonal concepts).

(At least the above is how I think about the technology of that time).

Personally, I think C is a great place to implement OO "on top of " and
moreso for having the luxury of analyzing the weak aspects of the C++ object
model. I would opt for a departure "new" language though rather than being
100% backward compatible with C (one of C++'s Achille's heels).

Is OO in C's future? Who's for it? What are the minimal features to get
"adequate" OO capability in the language? (Feel free to add other relevant
thoughts also as this is just a brainstorming post).

Tony

I'll also point to DataDraw for OO in C (datadraw.sf.net). Code that
uses it runs faster than plain C, with productivity for many
applications that I feel exceed C++ and Java.

While most programmers will advise against a new language effort, I
say go for it. There's not much chance it will become popular.
Consider that there are hundreds, possibly thousands of programming
languages, and only a few that actually get much use. Still, there's
a chance, and you'll likely have fun and learn a lot along the way.
Besides, a true optimist will ignore all those odds, and only a true
optimists has any chance of actually improving the state of modern
programming for the rest of us.

I'm currently building what may be about my 10th effort at a new
computer language: 42, currently at sf.net/projects/graillang (then
unix name will change to l42). Like DataDraw backed C, it will be
faster than C, it will compile to hardware like behavioral System
Verilog, and will be user-extensible beyond any compiler I ever heard
of. Code reuse will also be extended into new territory, well beyond
class based inheritance. I also hope to enable software to run faster
on FPGA based reconfigurable computers than on Wintel machines, and
the vast majority of 42 will be written in 42 as libraries, even class
support.

Like I said, you have to be an optimist. In the case of 42, I think
it can actually happen. The goals sound like crazy ranting, but if
you want to talk on another thread (currently we talk on datadraw-
(e-mail address removed)), I can explain what's up in 42.
 
J

JC

I'll also point to DataDraw for OO in C (datadraw.sf.net).  Code that
uses it runs faster than plain C, with productivity for many
applications that I feel exceed C++ and Java.

While most programmers will advise against a new language effort, I
say go for it.  There's not much chance it will become popular.
Consider that there are hundreds, possibly thousands of programming
languages, and only a few that actually get much use.  Still, there's
a chance, and you'll likely have fun and learn a lot along the way.
Besides, a true optimist will ignore all those odds, and only a true
optimists has any chance of actually improving the state of modern
programming for the rest of us.

I'm currently building what may be about my 10th effort at a new
computer language: 42, currently at sf.net/projects/graillang (then
unix name will change to l42).  

If it's completely new, make sure you put it here:

http://99-bottles-of-beer.net/

:)
 
C

CBFalconer

JC said:
I do not quite understand what you are saying, but Tony does not
seem to be a "newbie". Additionally, it is highly unlikely that I
was referring to all repetitive questions on any topic in general,
and highly likely that I was referring to this specific thread.

You obviously do not recognize sarcasm.
 
J

JC

... snip ...



You obviously do not recognize sarcasm.

In fact, sarcasm was the only thing I got out of what you said.
Everything else that you may have been implying, whatever that may
have been, I missed entirely.

Jason
 
T

Tony

Objective C was an attempt to bring Object Orientation to C. At the time
if
it's incarnation, the prevailing thought was that OO meant not only
objects,
but sending messages to them, probably because of the increasing
popularity
of event-driven GUIs at the time. (Note that Smalltalk was another
muddling
of the two orthogonal concepts).

"Why are you using the past tense in connection with Objective-C? There
is a huge amount of software being written in Objective-C right now."

Really? Well that's a neat piece of trivia. I'll have to give it another
look see in 2009 as I ponder the (small) possibility of tackling a language
project.

Tony
 
J

JC

"Why are you using the past tense in connection with Objective-C? There
is a huge amount of software being written in Objective-C right now."

Really? Well that's a neat piece of trivia. I'll have to give it another
look see in 2009 as I ponder the (small) possibility of tackling a language
project.


Cocoa is one of the main high level native APIs on Mac OS X and is
primarily available with Objective-C bindings. XCode on the Mac has
extensive Objective-C support. An enormous amount of OS X native
development is done with Objective-C. XCode + OSX may be worth a look
if Objective-C is the language you're going to take a peak at.

Jason
 

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
473,776
Messages
2,569,603
Members
45,196
Latest member
ScottChare

Latest Threads

Top