Well, I don't really want to get into an argument about it - but I still don't 
really agree. "Maybe", but I'm still not convinced. Just because MS Windows API 
is flawed doesn't mean that C is flawed (and I'm not saying that C isn't 
flawed) - it just means that the Windows programmers came up with a poor API. 
And if C++ can provide a higher level wrapper - well, they could have written 
that higher level wrapper in C. Their MFC stuff still seemed to have macros in 
it, and were fairly inflexible.

Presumably they could have come up with a C API that was close to declarative. 
I dunno, something like:
    mainwin = frame(NULL);
    canvas = new_canvas();
    add_ok_button(canvas, "C Rocks");
    attach_sub_window(mainwin, canvas);
    ... and whatever

I think even non-programmers could understand what was going on there.

I haven't exactly thought it through, you understand - and there's allsorts you 
could do with tagging schemes, and so on. And I don't want to go through 
details thinking about what the API might look like exactly - my point is that 
they /could/ have implemented something that approaches the comprehensibility  
that you see for Tkinter in python, but they didn't.  And that's why I still 
don't buy your argument about C++ being intrinsically superior.

But anyways, it's probably better if we just agree to disagree. ;)

----- Original Message ----
From: David McNab <[EMAIL PROTECTED]>
To: cinelerra@skolelinux.no
Sent: Friday, 24 August, 2007 9:37:05 AM
Subject: Re: [CinCVS] Some of my thoughts on scripting

On Fri, 2007-08-24 at 08:15 +0000, Mark Carter wrote:
> Nah ;)
> 
> C++ couples functions and data, C decouples them. And decoupling
> rocks. At least that's what the adverts say.

Coupling can be bliss or nightmare.
At its best, it can sort C spaghetti into organised looms.
At its worst, it can create whole new confusing layers of spaghetti.

Look at GUI programming for example. Compare the raw MS Windows C API
with the higher-level MFC MSVC C++ API. The former is a confusing and
nit-picking nightmare. The latter is think and do, without fussing over
innumerable details.

Again - my strongest support is for basic C++ usage, including:

 - classes
 - inheritance
 - objects
 - methods
 - attributes
 - exceptions
 - templates
 - no smart-assed esoteric C++isms







      ___________________________________________________________ 
Want ideas for reducing your carbon footprint? Visit Yahoo! For Good  
http://uk.promotions.yahoo.com/forgood/environment.html

Reply via email to