Subject: Re: Harlequin vs. Allegro From: Erik Naggum <clerik@naggum.no> Date: 1998/06/27 Newsgroups: comp.lang.lisp Message-ID: <3107918791556427@naggum.no> * 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. #:Erik -- http://www.naggum.no/spam.html 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.