pclark@SRC.Honeywell.COM (Peter Clark) (09/13/90)
Will ISE ever release a version of Eiffel for the NeXT? (Shouldn't be that hard, not that different from sun3) Pete Clark Honeywell S&RC Mpls, Mn
giacomet@venus.ecn.purdue.edu (Frederic B Giacometti) (09/13/90)
In article <91098@srcsip.UUCP> pclark@SRC.Honeywell.COM (Peter Clark) writes: >Will ISE ever release a version of Eiffel for the NeXT? (Shouldn't be that >hard, not that different from sun3) Yap, all the more than the version for the IBM R6000 has been announced for the end of the month. Don't these two workstations have a same user interface in common, NeXTStep, much more evolved than Xwindows (berk) and with which Eiffel could be very profitably integrated ? Imagine, all these little browsers ... Allez, un petit effort, quoi. Frederic Giacometti School of Industrial Engineering Purdue University
bertrand@eiffel.UUCP (Bertrand Meyer) (10/21/90)
From <91098@srcsip.UUCP> by pclark@SRC.Honeywell.COM (Peter Clark) of September 12 (sorry for the delay in responding): > Will ISE ever release a version of Eiffel for the NeXT? > (Shouldn't be that hard, not that different from sun3) From <1990Sep12.232802.25912@ecn.purdue.edu> by giacomet@venus.ecn.purdue.edu (Frederic B Giacometti): > ... Allez, un petit effort, quoi. The answer to similar postings a few months ago was ``we do not have any plans to support the NeXT at the moment''. It appears that we will after all be able to do a NeXT port before the end of this year. We'll post a precise announcement as soon as more details are available. It is quite legitimate to ask (as Messrs. Clark and Giacometti) why this will have taken so long. Let me use this opportunity, then, to say a few words about Interactive's policy with respect to the hardware platforms that we support. For software vendors, Unix is a total nightmare - not so much technically (there must be *some* reason for having chosen it) as commercially. The lack of a binary standard, the variety of available platforms and the proliferation of variants for C, function libraries, file system conventions, X Windows facilities etc. mean that to respond to user demand we must support many different platforms. Hardware vendors mostly do not care about the problem; to make matters worse, they continuously introduce new OS versions, often binary-incompatible with previous ones. Some even have both ``BSD'' and ``System V'' variants, supposedly as a benefit. We have tried very hard to support every significant Unix version. Although I don't remember the exact number of platforms, it is somewhere in the neighborhood of 25. Although not absolutely unique, this is quite original as compared to the rest of the industry; go to a Uniforum or Usenix exhibition, and you will see that most software companies just support one to four platforms. This commitment to wide Unix availability has taken its toll. Internally, our installation looks like a computer museum, with many different types of Unix boxes, preventing us from standardizing on a single ``ideal'' development environment. Wide platform coverage has also made the quality assurance process rather tricky. We pride ourselves on having a single source code and, most importantly to Eiffel users, on guaranteeing that the Eiffel compiler will always produce the exact same C code (this is particularly significant for C-package generation, as it ensures one of the major advantages of the Eiffel environment, support for portable cross-development). Given all the practical problems of C, Unix and X Windows portability (or lack thereof), this means almost endless testing and re-testing; we are never sure that something that works on machine A will work identically on machine B. Change control, tricky enough on a single-platform environment, is a nightmare. Since the code has been written and maintained with a constant concern for portability, it is true that the porting effort to a reasonable Unix platform is by itself, in Mr. Giacometti's words, usually reasonably ``petit''. And in fact, I don't expect the port to a NeXT to take more than a few days. It would not have been difficult, then, to do the port many months ago, using some third party's NeXT workstations. This was in fact offered to us several times. Why then did we not do it? The reason is simple. We are not a research laboratory producing prototypes, whose users may be left in the blue when a problem occurs. We advertize the Eiffel environment as a production vehicle, and we will not sell a version unless we can commit to supporting it professionally. Concretely, this implies a policy of not offering a version unless we have the corresponding platform in-house. (There were a few exceptions to this rule in the past; most have been corrected, and the few remaining ones will soon be.) We believe that to act otherwise is irresponsible. When a customer calls in with a bug report, what shall we do if we do not have the hardware to reproduce the problem? Since no one can afford to maintain a copy of every Unix box that comes out, this has meant that we have focused on two (non-disjoint) categories of machines: - Clear market leaders. - Machines whose manufacturers understand the benefits of Eiffel and have shown their support. We have indeed established excellent strategic relationships with the more enlightened hardware vendors. It is quite natural that their machines should have the benefits of priority when a new version of Eiffel comes out. Eiffel users have played a key role there: no leverage matches that of a hardware vendor's customer who wants Eiffel on his machine. In the case of NeXT, it is fair to say that neither category applies yet. In spite of this, it seems, as mentioned at the beginning of this article, that we have found a way to provide a port in a manner that is compatible with our quality standards. I hope this has shed some light on Interactive's decision process. We have nothing against the NeXT or any other Unix machine per se. ``Doing a port'' is indeed easy; but this is only the tip of the iceberg. I am sure that Eiffel users, who are already (justifiably) rather demanding and critical, would not have it otherwise. -- -- Bertrand Meyer bertrand@eiffel.com