On 13-Aug-2000, Sylvan Ravinet <[EMAIL PROTECTED]> wrote:
> Hello,
>
> > > will be coming from C and C++ where it is perfectly normal to do all sorts
> > > of things that the compiler cannot guarantee to be safe. This leads to all
> > > sorts of bugs such as buffer overflows, stack corruption, page faults
> > > accessing unmapped memory, etc. By making it so convenient to write unsafe
> > > code in C#, Microsoft has essentially given these C/C++ coders an excuse not
> > > to bother learning how to write safe code, and many programmers will take
> > > that excuse.
> >
> > I don't believe you can teach programmers anything by trying to take
> > tools away from them.
>
> Hum. Sorry. I'm a total newbie compared to all of you here,
> but. yes, it is a language design question. What's
> encapsultation and abstract data types? What's object-oriented programming
> itself?... I thought that information hiding - and the related language
> features are known to be good. That's why I really cannot follow your
> point here.
My point here is that if you refrain from adding features from your
language to try to discourage programmers from using those features,
they will just end up not using your language.
In many cases the programmers simply need to be shown the equivalent
features of your language that allow them to do what they want to do.
But in the case of writing unsafe code, (my interpretation of what)
Craig Dickson believes (is that) the correct approach is to not have any
equivalent features, but to write it in a completely different foreign
language.
I believe this is "throwing the baby out with the bathwater", and you
can find alternate methods that have all the power but far fewer
drawbacks. I believe that doing this makes your language a stronger
tool, and is therefore more likely to be used by programmers.
It also makes it a more dangerous tool, but if your alternative is to
write more code in a language such as C/C++, you can't get much more
dangerous!
--
Tyson Dowd #
# Surreal humour isn't everyone's cup of fur.
[EMAIL PROTECTED] #
http://www.cs.mu.oz.au/~trd #