[Top][All Lists]

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

Re: [DotGNU]Dotgnu written in C#?

From: j_post
Subject: Re: [DotGNU]Dotgnu written in C#?
Date: Mon, 11 Aug 2003 20:39:32 -0700

On Monday 11 August 2003 10:52 am, DrDiettrich wrote:
> > The most serious errors in programming are architectural, not errors in
> > implementation. 
> Agreed. I'm not sure how far project design tools can help in this
UML and similar tools. They're not silver bullets, but they are useful.

> > IMHO, languages that "protect" an
> > incompetent or inexperienced programmer are good for teaching, but not
> > for production work.
> Where do you see any reason, why a compiler should not be able to
> perform extended syntax and semantic checks on the source code, and
> produce the most efficient code at the same time?

Absolutely none. Modern compilers *should* do these things. What I meant by 
"protection" is languages that limit what programmers can do on the grounds 
that some practices are "unsafe". Some practices that are "unsafe" (pointers 
for example) are very powerful tools when used by a competent programmer, and 
programmers should not be prevented from using such tools just because some 
will abuse them.
> I agree if you mean time consuming runtime checks

I have in mind not only runtime checks, but overhead that is inherent in any 
OO language. OOP is a good thing and is the appropriate choice for many 
applications, but in some cases (embedded systems is an obvious example), the 
overhead of constructors, destructors, garbage collection, etc, can be fatal 
to a project. Even in applications, it can make a huge difference: One of my 
current projects runs fairly fast in C--implementing the same algorithms in 
C# results in a runtime that crawls along at an unacceptably slow rate.

> OTOH any object management support, like
> garbage collection, will slow down the code a bit at runtime, but can
> reduce development time dramatically; not so much in writing the
> application code, but in hunting bugs!
This is true. One must decide whether runtime efficiency or 
development/maintenance time is most important for a particular application. 
Having spent two decades developing embedded systems, I have a slight bias 
toward runtime efficiency and so prefer C over OO languages. ;-)


reply via email to

[Prev in Thread] Current Thread [Next in Thread]