On Sat, 2004-02-21 at 20:39, Franz, Fa. PostDirekt MA wrote:
> Hi,
> 
> this discussion is useless, object or procedure is not realy the question.
> You need to know how to build a good programm, if you cannot create a good programm,
> no matter what language.
Originally, I was asking Heikki's opinion regarding good guidelines for
C coding, as although the university I attend teaches us C from first
year onwards, all testing and design subjects focus almost soley on
OO-related methods.

> The amount of realy bad java-programs (90% i have seen were realy bad) shows,
> that it is maybe not a good idea, to make programming to easy :o) .
Agreed! I know one person that changed my GUI architecture design from
using static members to store most graphical elements to "normal"
members because "it won't cause as many problems". Memory issues are now
of great concern in that system due to the shear number of Swing objects
created.

> There are a lot of people, thinkink a complex task is better done with an 
> oo-language.
> My boss is this opinion and had already 2 memleaks in C++, he searched for one
> 6 weeks.
C++ is a terrible language for memory leaks. A common source of memory
leaks comes from operator overloading, and many of us have experienced
the pain involved in coming up with a solution that doesn't result in
lots of wasted space on the heap.

> So the truth seems to be, that an oo-language (especially java) makes it easy to
> programm complex tasks, but what comes out in the end is worth.
I've found C to be much easier for some tasks. Just picking an
appropriate abstraction to use for certain architectural elements can be
difficult in itself.

On the other hand, I find functional languages such as Haskell and
Erlang to be extremely useful for some tasks, and logical languages like
Prolog (yes, I know it's not *really* a logical programming language,
but it's close) and Mercury (first prize to anyone who can guess which
uni I'm at!).

> I prefer TCL because on my opinion it is the best of both worlds
> ( i never had a memleak except with a bad API written in C).
Bad...written in C...was it a SCO library?
> Complex tasks should be done from skilled programmers - thats all.
Additionally, complex tasks should be decomposed into simple tasks by
skilled programmers. :-)
> 
> mfg
>       Klaus
> 
> 
> -----Ursprüngliche Nachricht-----
> Von: Heikki Tuuri [mailto:[EMAIL PROTECTED]
> Gesendet: Samstag, 21. Februar 2004 09:30
> An: [EMAIL PROTECTED]
> Betreff: C compared to C++/Java; Was: Re: InnoDB Hot Backup + MySQL
> embedded?
> 
> 
> Jochem,
> 
> ----- Original Message ----- 
> From: "Jochem van Dieten" <[EMAIL PROTECTED]>
> Newsgroups: mailing.database.myodbc
> Sent: Saturday, February 21, 2004 2:10 AM
> Subject: Re: InnoDB Hot Backup + MySQL embedded?
> 
> 
> > Sasha Pachev wrote:
> > > Heikki Tuuri wrote:
> > >> C versus object-oriented lanuguages like C++/Java is a topic I have
> > >> discussed a lot with programmers. I believe that traditional procedural
> > >> approaches and languages, like C, are the best for 'systems
> programming', by
> > >> which I mean implementing anything with complex data structures and
> lots of
> > >> parallelism. A DBMS is a typical example of such a complex program.
> >
> > >> 3) A weakness of C compared to Java is memory management. In C you can
> > >> easily write programs that leak memory or run over allocated buffers.
> In
> > >> practice, it has turned out to be relatively easy to keep these memory
> > >> management bugs at a tolerable level in our C programs, so that a move
> to a
> > >> language with automatic memory management is not needed.
> > >
> > > In Java is it easy to write a program that wastes large amounts of
> > > memory, which is worse than a leak. In C, you are full from the start,
> > > and then you leak a drop at a time until you are empty. In Java , you
> > > are empty from the start, and you have nothing to leak anyway even if
> > > you could :-)
> >
> > http://citeseer.nj.nec.com/shah01java.html
> 
> here is a .pdf version of the paper:
> http://gist.cs.berkeley.edu/~mashah/java-paper/paper.pdf
> 
> The authors used a 2 x Pentium III 667 MHz, Linux-2.2.16, Sun JDK 1.3, and
> Java HotSpot Server JVM 1.3.0. to implement a 'data-flow' query processor.
> 
> Their conclusion is that the memory management and the garbage collection of
> Java is inefficient. The graph that they present shows an up to 2.5-fold
> performance degradation with the Java garbage collector, compared to their
> own tailored memory management system.
> 
> I worked with Entity Systems Oy in the 1980s. We developed a Lisp
> interpreter and a compiler, and a Prolog interpreter. At that time, the
> inefficiency of the garbage collection in Lisp and Prolog was a serious
> problem. I am not familiar with more modern garbage collection algorithms,
> but the paper of Shah et al. suggests that there are still problems today.
> In the 1980s, the research group of Mike Stonebraker initially started
> implementing Postgres in a mixture of Lisp and C, but they later abandoned
> Lisp.
> 
> > Jochem
> 
> Regards,
> 
> Heikki
> 
> > -- 
> > I don't get it
> > immigrants don't work
> > and steal our jobs
> >      - Loesje
> 


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to