Re: C vs C++ for GTK



Just .02 € from a programmer who's been doing it for about 40 years. I agree with most of what has been said on this thread. My thought is that object-oriented thinking is entirely different from procedural thinking. I think that one needs to settle on one paradigm or the other and stay with it.

Personally, I'm using Ruby and like it very much. The reason is that it allows me to concentrate on the project at hand rather than the details of its implementation. There are occasions when a low level language like C++ is needed, but why twiddle bits when bit twiddling only gets in your way? IMHO, it is the true scientist who will use either C or C++, because of the low level of code access. The question is, "Do you want to drive a car, customize a car or design a car?" None is better than the others. They are different disciplines.

GTK is written in C, I do believe, so the person programming in C can get up close and personal with it. My Ruby-Gnome package wraps the C code, so I can't get down and see exactly what GTK, as written, is doing, but, then, I've not needed to.

Regarding the reference to euros. I'm an American living in Finland.

Alan

JAMES SCOTT wrote:
Michael,

Thanks for the feedback, it seems we are on the same page on several counts.
James,
----- Original Message ----
From: Michael L Torrie <torriem chem byu edu>
To: gtk-app-devel-list gnome org
Sent: Monday, November 26, 2007 5:32:22 PM
Subject: Re: C vs C++ for GTK


JAMES SCOTT wrote:
To list members following this subject: I have a question - not a
flame, as I try to understand the diversity of responses to this
topic.

How many of you who have suggested "Patrick" learn something other
than C, know C already for yourself.  Over the course of my
experience I have found that learning assembler and C for a given
platform has helped me better understand and use that platform.
Also, knowing C make picking up or reading other languages like -
python, php, perl, and many others easier.

I agree to a point. C isn't going to teach you much about list
processing (a la LISP), domain-specific languages, lambda closures,
proper variable binding, functional programming, etc.

On the other hand, C helps one learn to manage resources explicitly
(even garbage collection can bite you if you don't understand how
resource management works), pointers, etc.

The ideal computer science program would make sure one first knows (IE
is taught) C, then some assembly, then Scheme, then Python.

I'm assuming that, those of you who are pointing another way -
already know C!  Why not let Patrick follow your well worn path
through C/GLIB/GTK2, maybe he will come out afterwards to C++,
Python, or some other door.

Too late for that!  Patrick's already well into Python.  Python is a
great language to learn on, in my opinion.  It's as instructive as
learning LISP or Scheme, but as useful as C or C++, or even Java.  I
 get
the impression that Patrick already has some C proficiency.

Yes, my preference is C/GLib/Gtk+.  But I use lots of other when
 needed.

I'm coming to the opinion that a good rule of thumb is just to always
use python unless specific needs dictate otherwise.  Writing GUI code
 in
a low-level, compiled language just doesn't seem to be the wisest thing
to do these days.

That's not to say that you're advice to learn assembly and C isn't
 good.
 In fact it's important for all computer programmers to know, in my
 opinion.

When I have to write in C, Glib is a godsend.  And of course GTK+ for
the GUI.  Using Glib, I wrote a very complicated data parsing program
using dynamic strings, hash tables, and tree structures all with Glib
and only had one very small memory leak in 10,000 lines of code and
building and destroying many trees.





[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]