Subject: Re: Merriam-Webster's Collegiate Encyclopedia
From: Erik Naggum <erik@naggum.net>
Date: Sat, 03 Nov 2001 15:04:29 GMT
Newsgroups: comp.lang.lisp
Message-ID: <3213788666499342@naggum.net>

* Lieven Marchand <mal@wyrd.be>
| You parsed it correctly. Further in the paragraph, he goes on: "For
| example, measurements showed that more than 80% of the time was spent in
| the garbage collector despite the fact that resource management was part
| of the simulated system so that no garbage was ever produced."
| 
| I'm quite willing to believe GCs then weren't what they are now, but
| there probably was a way to tell the system not to gc even then, and even
| if there wasn't, adding it to the implementation would have been far more
| efficient than designing and implementing a new language.

  Garbage collection has led people astray several times.  It seems to be
  somewhat like taxation -- people who do not want to think things through
  tend to get ticked off by this cost that they do not accept, but if they
  do not see it, they accept it nonetheless, such as when the malloc/free
  implementation most C and C++ systems use does not measure the time it
  uses so nobody can really tell without profiling the whole application.

  Case in point: Emacs used to tell people that it was garbage collecting.
  A lot of people complained.  So I removed the message and let users at
  the U of Oslo CS Dept use the modified Emacs.  Several people thought
  that Emacs had become more responsive (*snicker*) and nobody complained
  about the gc pauses that were no longer announced.  This change was
  accepted and available to the public from Emacs 19.31.  (The variable
  garbage-collection-message controls the behavior.  Set it non-nil to see
  how much you get annoyed by the gc messages.)

  Incidentally, the U of Oslo CS Dept taught Simula in its introductory CS
  classes.  It was indeed a language that forced upon the implementation an
  amazingly high overhead.  But regardless of the inherent overhead, the
  compiler implementation was not exactly very optimized and the runtime
  system was bloated, its I/O model was designed for batch processing with
  punched cards and line printers, and while it left most students with an
  understanding of the concepts of object-oriented programming (at least as
  it applied to simulation purposes), it was not a language anyone would
  want to use for real applications.  From reading the specification (a
  nice little booklet), it appeared hard to remove the inherent overhead
  that the langauge required of any implementation, and this was not just
  the garbage collection issue.

  In general, it seems to be a very serious mistake to report the time
  spent in garbage collection or even report that you did collect garbage
  at all.  Too many users will get ticked off by this useless information
  and draw the wrong conclusions.  Bjarne Stroustrup is not the first to
  reach a seriously flawed conclusion from a personal grudge with garbage
  collection, and he is very unlikely to be the last.

///
-- 
  Norway is now run by a priest from the fundamentalist Christian People's
  Party, the fifth largest party representing one eighth of the electorate.
-- 
  Carrying a Swiss Army pocket knife in Oslo, Norway, is a criminal offense.