Subject: Re: Harlequin vs. Allegro
From: Erik Naggum <>
Date: 1998/06/27
Newsgroups: comp.lang.lisp
Message-ID: <>

* Zeno the Anonymous Poster
| ... I do not want technology to halt because file formats should remain
| consistent forever.  I want innovation to continue, and the best that can
| be done is to give the new program the ability to save in the old format,
| can you see a better way?

  yes, I can, and so can everybody else who has ever defined data formats
  and communication protocols.  again, this is not about Microsoft, but
  about how you have let your entire intellectual capacity be reduced to
  whatever Microsoft lets you imagine.  why would technology halt because
  file formats remained consistent?  this is a given in _your_ world, but
  it is a falsehood everywhere else.  it is mind-boggling that you believe
  this crap.  you _must_ break loose from and look beyond the propaganda.

  first, gratuitous incompatibilities with the past is _not_ evidence of
  innovation, but proof of rampant stupidity and technical inferiority.  if
  it is perpetrated on purpose, which it is by Microsoft, it is also evil.
  when the concept of innovation is expressed through incompatibilities,
  which it is by Microsoft, we're talking about conceptual pollution much
  more advanced than George Owell's Newspeak.  when customers believe this
  crap, we're talking about successful marketing and business smarts and
  billions of dollars going into the wrong hands.  it's all tied together
  like this, and it's somewhat disconcerting that a Microsoft victim is so
  dead set on defending the company and never listen.  Microsoft is really
  good at the propaganda game.

  second, designing a forward-compatible data format or communications
  protocol is trivial (except for people who think it's macho to be
  complex).  those who do not base their entire business on the hope and
  expectations that all their users will upgrade, have no problem applying
  the decade-old knowledge and experience that tells them that it is
  fantastically stupid _not_ to use forward-compatible techniques when they
  are so well known throughout the entire industry, _except_ for Microsoft,
  and apparently their believers.

  for the archetypical example of forward-compatible formats, consider the
  header-value pairs used in Internet mail.  the semantics of certain
  headers were defined in RFC 822 and a pattern to header names was defined
  never to obtain standard semantics (X-headers).  that's the extent of the
  core definition.  this format was _explicitly_ forward-compatible, in
  that new RFCs were supposed to add headers according to application
  needs, as they indeed have.

  if you need an elaborate example of what a data format would be like if
  people were concerned about standardizing syntax and not semantics, take
  a look at the Standard Generalized Markup Language, the foundation of the
  hugely successful and at least somewhat forward-compatible "HTML".  SGML
  is basically a meta-language for other languages, but while it is clouded
  in a _lot_ of problems because of its inexperienced designers at the time
  it got its core definition hammered out (early 1970's), it has some
  rather unique and interesting properties with respect to forward- and
  backward-compatibility.  it would take too long to explain them here, but
  consider the HyperText Markup Language.  HTML made the same mistake by
  accident that Microsoft does on purpose: they defined the behavior of
  future additions to be intrusive on the past.  in particular, an unknown
  element in HTML _always_ causes its contents to be treated as if the
  element's boundary syntax ("tags" to the public) were absent.  this is
  _really_ stupid.  the smart choice would be to have standardized on a
  property, perhaps syntactic, which defined whether an element should
  display or should be skipped.  it doesn't take a genius to think up these
  things, but it does require people who haven't been brain-washed to think
  in terms that _exclude_ such ways.  so, surprisingly, Microsoft's RTF
  does exactly that.  one is left to wonder how that can be when they argue
  so strongly that data formats _must_ change for them to "innovate".

  don't you think it's time to get off your Microsoft horse and stop saying
  things like "the best that can be done" when you clearly lack the theory
  and the practical experience to even be _able_ to say those words?  not
  only does it _offend_ some people to see monumentally stupid ways to do
  things being paraded as "the best that can be done", it indicates that
  you are not prepared to listen, you are not coming to a new world with a
  desire to learn, but you are (in effect) coming to a new world to defend
  your old world and your old ways.  if you hear arguments intended to make
  you realize that your old world is mostly bogus, it is because you make a
  point out of telling people it's great when they know that it isn't.

  what started as small stabs at somebody's even then apparent marriage to
  Visual Basic, actually went to prove that that person would be defending
  his Microsoft ways, not because they are better, but because he wouldn't
  _let_ anything better than them _exist_, and would even be upset that
  anybody could charge a lot more money for a kind of product that he
  thought he already knew everything about and which would compete with
  "the best that could be done", because surely, _nothing_ can ever exceed
  Microsoft's work in technical excellence.  right?  (wrong!)

  as long as people say Microsoft's mass-marketed crapware is technically
  superior or even quality products, they _will_ be beat over the head with
  huge sticks by those who know better, and they are becoming more and more
  numerous because it is impossible to keep a whole nation subdued with
  propaganda _all_ the time.  operating systems that actually manage to
  keep their data formats compatible and consistent for decades have begun
  to destroy the belief systems of die-hard Microsoftians everywhere.

  BTW, Lisp's syntax and data formats have remained consistent for several
  decades.  nobody needed to define a new and incompatible _syntax_ just
  because they issued a new definition of the _language_.  this is what
  happens when good people think.  gratuitous incompatibilities is what
  happens when stupid people don't think or bad people think too much.

-- is about my spam protection scheme and how
  to guarantee that you reach me.  in brief: if you reply to a news article
  of mine, be sure to include an In-Reply-To or References header with the
  message-ID of that message in it.  otherwise, you need to read that page.