Subject: Re: object oriented LISP?
From: Erik Naggum <erik@naggum.net>
Date: 27 Oct 2000 03:36:24 +0000
Newsgroups: comp.lang.lisp
Message-ID: <3181606584192278@naggum.net>

* Christopher Browne
| For the most part, the only part that people tend to be familiar
| with is the stuff C++ inherited from Simula...

  Which, by the way, wasn't the truly interesting bits.  Simula had
  garbage collection, coroutines, and supported simulation, hence the
  name.  Bjarne wanted to do simulation, but, due to his proximity to
  the C world, wanted to do it in a C-like language.  None of the
  stuff that supports simulation in Simula survived into the C world.

  The kind of object system that Simula has is fantastically optimal
  for manipulating objects in a simulation.  It is simply brilliant.
  However, if you don't do simulations of mostly real-world things,
  the object paradigm doesn't really work, the encapsulation stuff is
  more of a hindrance than a support, and the inheritance mechanisms
  don't make much sense being the exclusive approach.  So Bjarne took
  all the bits that made Simula good for simulation, junked all the
  necessary support systems needed for simulation, and ended up with a
  model that doesn't really fit his support framework (which only does
  object creation and destruction and rudimentary type dispatch), only
  to have to add something so incredibly retarded as Templates because
  he failed to grasp what he had left out in his desire to copy Simula.

  Bjarne claims to credit Simula, but C++ is a discredit to Simula if
  it pretends to have learned from it.  Simula's pioneering work in
  object orientation for simulation deserves a legacy, not something
  so miserably idiotic as C++.

#:Erik
-- 
  Does anyone remember where I parked Air Force One?
				   -- George W. Bush