Subject: Re: In praise of Java.
From: Erik Naggum <erik@naggum.net>
Date: Tue, 04 Dec 2001 21:35:33 GMT
Newsgroups: comp.lang.lisp
Message-ID: <3216490531386367@naggum.net>

* Erik Naggum
> amends unless you threaten him.  C++ is a language that encourages such
> cheating and lying because you _have_ to tell your compiler something you
> cannot possibly know, yet, such as the type of all your variables and
> functions, and then you make up a reality that fits the lies.

* Hannah Schroeter
| That particular point doesn't match my experience.  Usually my assertions
| about types (which are checked according to the type system) are true, at
| least *now*.  Maybe they'll become wrong due to evolution of the system
| I'm (co)developing.  Then there may be excessive changes to the type
| declarations etc., of course, but still, usually things are true *now*.
| Except you excessively cheat yourself around the type systems using casts
| or things like that.

  But things that are true _now_ which turn out to be false a short time
  later are generally regarded as unpredictable.  The problem is that you
  have to make those changes without any changes in external requirements,
  they are required as your knowledge of only your _own_ code increases.  I
  consider this to be a case of being forced to say that something is true
  when you are clearly not certain that it is, and then when you cannot
  make up a credible world around it so it holds true, you change your
  testimony, as it were.

| Now, frankly, C++'s type system is usually more expressive.  You can map
| almost everything save for GC-based issues from Java into C++, but not
| necessarily vice versa.

  This is actually an argument that C++ is a lower-level language than
  Java.  The most expressive type system is that of machine language, or
  assembler.  We sacrifice expressibility on one level to attain it another.

| However, I don't really like using such simple drawers like "male" and
| "female".

  People actually do come in these easily labeled packages.  The difference
  is whether one confuses the descriptive and the prescriptive statements.
  Induction is a tricky business, prediction even more so.  I really tried
  to avoid both and just report my observations so far.  See my signature
  for a hopefully succinct summary of all the possible arguments why I
  think you misdirected your comments on stereotyping.

///
-- 
  The past is not more important than the future, despite what your culture
  has taught you.  Your future observations, conclusions, and beliefs are
  more important to you than those in your past ever will be.  The world is
  changing so fast the balance between the past and the future has shifted.