Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!usc!wuarchive!zaphod.mps.ohio-state.edu!ncar!midway!iitmax!gkt From: gkt@iitmax.iit.edu (George Thiruvathukal) Newsgroups: comp.lang.modula2 Subject: Re: BIX - BYTE - JPI - Chaos Message-ID: <1991Apr16.040246.4174@iitmax.iit.edu> Date: 16 Apr 91 04:02:46 GMT References: Organization: Illinois Institute of Technology / Academic Computing Center Lines: 67 In article , GRANGERG@VTVM1.BITNET (Greg Granger) writes: > Sorry I'm so late responding, lots going on ... > > On Mon, 8 Apr 91 20:50:15 GMT Larry M. Jordan said: > >I must disagree with Mr. Pournelle's condemnation of JPI M2 V2 whose > >... > >4000 vs. 2000 (arb. example) LPM compilation rates. > I never said (nor did Dr. Pournelle) that is didn't work (well I they > did have a heap problem, but they fixed it). What was said is that > the implementation was not true to the design philosophy of M2 or even > in line with there version 1 compiler. I have no problem with a > multi-lang platform, I like the idea, but it should be implemented > is such a way that does _force _the _user _to _deal _with _the > _details _of _the _other _languages, _like _the '_' _that _are > _generated _by _C _compilers (see JPI's graphics lib). Well, as I mentioned in a previous message, Pournelle is full of it. There is absolutely no good reason for anybody to argue about language "purity" and "philosophy" when discussing a multiple-language development environment. It is never going to be possible to interface Modula-2 and C without some details entering the picture. I might also mention that it is pretty common practice in the art of compilation to generate linkage names which begin with an underscore symbol. > > > >The OOP extension IMPO appears well integrated (I've implemented an OOP > >extension to M2 myself and was pleased with what JPI had done). This > >is still Modula-2. > Well integrated, perhaps, but not well considered. Further, when using > those extension, you leave M2, but I don't see any problem with that > if portablity is not an issue. I still say is was a no-thought, "let's > copy MS and Borland" move. In fact, you and I are in complete agreement here. The only company which has done anything intelligent with object-oriented languages in the PC world is Borland. Their Borland C++ product is equipped with a robust class library and interfaces to the state-of-the-art object-oriented technology (like Actor). Quite frankly, the whole idea of adding objects/classes to a language is useless, if the object paradigm is not supported and encouraged. The only way to support (encourage) the use of the paradigm is to include class libraries and examples of non-trivial nature. I, for the sake of myself and the rest of the world, hope these vendors will eventually get the idea that object- oriented is more than just another buzzword which makes everybody's hair stand straight and eyes pop out. > [inessential stuff deleted] > main ones they took the time to wrap (increasing call overhead if you > don't use C), other they just tell you to use '_' when calling. If you use Modula-2 as Modula-2, there is no additional overhead for procedure calls. In fact, in JPI Modula-2, there is less overhead for a procedure call than there is in Turbo Pascal, because the parameters can be passed in registers most of the time. Your allusion to underscores, I might add, is not relevant at all to call overhead. > Which is another gripe, at a time they decreased the quality they > increased (tripled) the price. I understand (hope) they have > reconsidered that. It is my impression that the product doubled in price for the Standard Ed. -- George Thiruvathukal Laboratory for Parallel Computing and Languages Illinois Institute of Technology Chicago