Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Date: Tue, 5 Aug 2003 22:37:48 -0400 From: Christopher Faylor To: cygwin AT cygwin DOT com Subject: Re: Yes but I don't understand ... Message-ID: <20030806023748.GA19231@redhat.com> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.1i On Tue, Aug 05, 2003 at 08:07:46PM -0500, Wayne wrote: >I thought it went like this: > >In the beginning, there was B20, and it was GOOD. After that, it went >downhill... That raises the age old question of "If there was a B20, what about B19? Why are there ChangeLog entries for earlier versions?" Many religious philsophers have pondered this question. A common answer is that God created a ChangeLog with earlier entries when he created B20. The theory is that this is part of His imponderable plan. However, many find this explanation unsatisfying. Skeptics insist that the ChangeLog points to clear evidence of earlier versions and there is, in fact, a scientific discipline called arcygologists devoted to attempting to recreate ancient versions of Cygwin from ChangeLog descriptions. Many scientists theorize that Cygwin started as a very uncomplicated "Hello World" type Windows program. This type of program probably existed for uncounted years prior to the first occurence of a Cygwin DLL as we now know it. Interestingly, ancient ChangeLog records seem to show that even the name of the DLL was different in these early years. Arcygologists have pieced together a word resembling bnu-win23 as the name of this early proto-Cygwin. The theory is that the DLL evolved as the result of constant pressure from an early internet mailing list type of culture. In the early years the mailing list consisted of an inhospitable majordomo environment. This environment was good enough for the early Cygwin, whose sole purpose appeared to be nothing more than to brighten the day of the primitive internet by issuing cheery "Hello World!"s from the direction of Windows machines. The constant stream of "Hello World"s had an effect, however. Over time the majordomo environment changed, as the result of constant churning of email. The pressure of this early environment with such theorized elements as "It seems to me that bnu-win23 should be greeting me with the time of day when it says hello", "If bnu-win23 can't grow to meet the needs of the Amiga, it will certainly fail", and the frequent "I can't Hello World my bnu-win23 on 3.11 Windows. I have Helo WOrlded my 3.10 other machine! Can it be a problem with my CGA monitor?" forced a slow, almost imperceptible change in the program over time. The pressure of increased need for complexity resulted in such things as "cross compilers" to begin forming on the vast sea of UNIX machines which populated the internet. As these "cross compilers" progressed they were capable of building ever more complicated Windows programs. Then a fateful day occured when the first *compiler* emerged shakily onto the shores of a pre-XP windows system. This "compiler" contained the backbone of what would eventually become a modern, upright Cygwin B20. While "cross compilers" continue to exist to this day, the Cygwin "compiler" has grown to occupy the vast, previously uncharted niche of the Windows machines. The result of increased complexity also caused a change in the internet environment in which early Cygwin's had grown. Slow, huge, dim-witted majordomo was replaced by the smaller quick-witted and nimble qmail/ezmlm. There were also changes in the cygwin license, owing to internet feedback. In parallel to this, what started as a primitive public domain program, evolved into a free-but-our-competitors-can't-use-it license. This type of license provided inadaptable for the internet environment and bnu-win23 nearly foundered and died as a result. The internet environment began to shrink around the early bnu-win23. What happens next was not clear from the ChangeLog records. Apparently some stray internet particle caused a fortuitous licensing change to the now-well-known GPL. While this also caused much internet churning, it did result in the modern Cygwin that we know today. The name change from the early bnu-win23 to Cygwin is also clouded by gaps in ChangeLog records. The current theory is that some massive internet outage caused the extinction of many early copies of bnu-win23, allowing their less well-known and practically invisible Cygwin counterparts to take center stage. In any event, the theory is that the churning of this majordomo/ezmlm internet structure continued. Cygwin was subjected to a constant barrage of random comments, causing it to metamorphosize into its present structure. Interestingly, arcygologists are certain that if you were to repackage and polish a B20, it would be nearly indistinguishable from the 1.x.x Cygwins of today. The only change would be a certain subtle meanness associated with the 1.x.x versions, which, while present in the B20 era, was less conspicuous. Personally, I think I lean towards the "God created a ChangeLog with evidence of previous Cygwins in it as part of His inscrutable plan." YMMV. cgf -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/