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

Re: Strong Typing, Dynamic Languages, What to do?

Shriram Krishnamurthi <sk@cs.brown.edu> writes:

> Oscar Fuentes wrote:
> > Ok, you can do run-time bounds checking if you wish.
> Yes, but you can't help it if someone else decides not to do it.
> That's a simple rule of language design that C++ violates.  The rule
> is that an abstraction isn't one unless it also comes with the means
> of enforcement.

Right. The problem is that "enforcement" sound like a ugly word for
C++ programmers. Some enforcements are better applied directly to the
people. Every programming language does this in a way or another.
> Anyway, I don't think I or anyone else here is saying anything you
> don't know.

I was expecting to hear something I don't know.

> I am somewhat curious about why we are having this thread at all,
> though.  Did Matthew change the name of this list to
> plt-c++-advocacy while I was napping? (-:

Well, sorry. Actually, the readers of my posts on some C++ forums
could accuse me of being an Scheme propagandist :-) (among other ways
of remembering them that C++ is not The Perfect Language)

Really, I'm lurking on the Scheme/Lisp ngs since some time ago, in
addition to this list. As an active C++ programmer I read C++ forums
too. And I must say that seeing the attitudes of each community
towards the other is disheartening.

Systematically, the claims made about C++ from the lispy field sound
as disinformed on the ears of C++ programmers (a kind of "they don't
understand us. They say this is bad when in fact we know about it and
made a conscious decission of living with it") while some claims from
the C++ guys about lispy ideas simply shows a blatant ignorance about
the matter. The committee that approved the STL without adding to the
language some kind of lambda facility should be slapped :-)

The fact that I reacted on this forum obeys to the fact that the
people here is way much more educated than some comp.lang.scheme/lisp
attendees (specially the .lisp ones ;-) Now that I released some steam
I'll go back to lurk mode for a while :-)

And BTW, I'm not a C++ bigot. Actually, I dislike it to some
extent. Scheme looks better to me. It's just that C++ has _two_ key
features not found combined on other languages and this forces me to
use it.