CompuServe Thread

Congrats on C++

18 messages in this thread
#25008From: Bill RobertsJun 27, 1992 10:31 AM
I recently got C++ for my Amiga, and have a few comments for you. My first comment/complant is the cfront program. As a part of the FORS script, you copy the program to memory. The static size of the program is about 650k. With the 100K stack setting, the program eats up 750K just to start. Add to that the dynamic allocation, and I can't compile Hello.c in my 3 meg amiga. This is even when I start my system with DirectoryOpus instead of workbench, saving about 100K of space usage. I have since modified FORS not to load cfront, and everything works fine. Why did you have the program load into memory? Just curious. Second question, why do I get two compiles and links? I intend to go in some time and (carefully) modify the arexx script to see if I can remove "dead" code (Aztec compiler refs since I have SAS C, and such). That would be a good learning experiance, since I have only used ARexx while running your script. I am going through "Teach Yourself C++" using your compiler. Good job. Bill Roberts in Ellettsville In. via Whap!
#25077From: Greg Comeau@Comeau CmptgJun 29, 1992 9:31 AM
>FORS … copy the program to memory. …. program eats up 750K just to start. >Add … dynamic allocation, and I can't compile Hello.c in my 3 meg amiga. My initial reaction is: something is wrong with something you have setup as we have yet to hear any comments like this. Before we start pointing fingers at one another ;-), I'm unclear on what "I can't compile" means. Also, do you have any other things running in the background that might be of some significant size? >I have since modified FORS not to load cfront, and everything works fine. Yes, I believe we mention that this is a possibility twice or so in the docs. >Why did you have the program load into memory? Just curious. Because when we didn't, just about everybody complained and said that since they were going to do it themselves, they we should do it for them (yeah, one lousy line either way, but there point is well taken since so many called to say this). In fact, the latest wave is that the want it resident. The issues is that they want it to load faster.
#25136From: Bill RobertsJul 1, 1992 6:21 PM
>> I'm unclear on what "I can't compile" means. I run out of memory. This is just after starting my system. Rather then give a complete description of my machine for the second time in this session, see a note I just wrote to Pat@Oxxi over in the vender forum. The message subject is a problem with Start.sbp. There I describe my system and startup. In your case, I just had Opus and a shell running. If I remove cfront from ram: I can compile. I have Opus as an icon on my workbench, showing available memory. When cfront finishes loading, the free ram is about 750K. That goes down to about 300K before the program ends. cfront bytes off about 25-50k bytes at a time. Bill Roberts in Ellettsville In. via Whap!
#25078From: Greg Comeau@Comeau CmptgJun 29, 1992 9:31 AM
>Second question, why do I get two compiles and links? Because C++ has some extra functionality that C doesn't have. In specific, it has constructors and destructors. Also, it allows non-constant initializers for statics. I can elaborate on this still if you'd like. >arexx script … remove "dead" code (Aztec) That would be a good learning Probably. Just realize that we will be adding some things to the script for Comeau C++ 3.0.1, so you may have to redo things if you find you go beyond "just learning" arexx. Alternately, if you find you came up with something interesting, tell us about it (the idea, don't send any code). >Good job. Thanks. All biases aside, you will not find a stronger C++ anywhere on any platform than Comeau C++ (except for our other ports!).
#25102From: Vic WagnerJun 30, 1992 6:33 PM
Greg, Could you please tell me WHAT additional platforms you have compilers for. What C compilers on these platforms do you recommend? I'm specifically interested in doing multi-platform development on the Amiga (natch), the PC (both MS-DOS and Windows (possibly OS/2)) and the Mac.
#25107From: Don Curtis/SYSOPJul 1, 1992 1:27 AM
Vic, I've got Comeau C++ (just learning it…so don't ask for an evaluation of the package)…the literature that came with it says they support: MS-DOS UNIX/386 SCO UNIX 386 SCO XENIX 386 AT&T 3B2 AmigaDOS AT&T UNIX PC/7300 Sun-3 IBM RS/6000 AIX Sun SPARC and (soon ?) Atart ST, MS-Windos and OS/2 I don't see anything about the Mac. Ah…looking further, under "Ports under Consideration" they list the Mac. Don
#25118From: Greg Comeau@Comeau CmptgJul 1, 1992 11:37 AM
>Could you please tell me WHAT additional platforms you have compilers for. Comeau C++ 3.0 With Templates is available for a number of platforms including IBM RS/6000, Sun SPARC, AmigaDOS, UNIX 386 and 486 SVR3 (Altos, AT&T 6386, Bell Technologies, DELL, ENIX, ESIX, Intel, Interactive 386/ix, Lynx OS, Microport 386, Prime, SCO UNIX, Toshiba, UNISYS 6000, VenturCom VENIX), UNIX 386 and 486 SVR4 including SVR4/MP (AT&T, Consensys, DELL, Intel, Microport, Micro Station Technology, NCR, Toshiba, UHC, UNISYS). If you're on one of these 386 or 486 platforms, price is $250, and includes UPS Blue 2nd day air shipping at no extra charge and free technical support. The Comeau C++ 3.0 MS-DOS port has been announced and will be shipping within days. Comeau C++ RSN's include Sun's Solaris, USL's Destiny, OS/2, Atari ST, Coherent 386 4.0, and so on. Also, Comeau C++ 3.0.1 (which will be a free upgrade) is already in beta on some of the above platforms. I probably left out some that we have (and we definitely have more from 2.1 that we will continue to sell — AT&T 3B2, Sun 3, XENIX, AT&T UNIX PC, etc — but that we thus far have no plans to 3.0'ize) as well as other ports still in the works that are too soon to talk about (one could probably guess them though). BTW, Comeau C++ is a licensed port of AT&T USL cfront. > What C compilers on these platforms do you recommend? On UNIX boxes, the C compiler that comes with the UNIX C development system. Under AmigaDOS, either SAS or Manx. Under MS-DOS, Microsoft. I won't list those for those platforms that we don't have formally released yet. Note: These list change over time (hint, a number are going to be changing soon). >I'm specifically interested in doing multi-platform development on the Amiga >(natch), the PC (both MS-DOS and Windows (possibly OS/2)) and the Mac. As per above, we've got Amiga and MS-dos covered. OS/2 is currently in active progress (and Windows might be released at the same time). Mac is currently on the drawing board.
#25128From: Vic WagnerJul 1, 1992 4:48 PM
Greg, Since we _really_ prefer doing development on the Amiga (editing, compiling, etc.) and we have the machines hooked up to a Novell network, are we going to need the C++ compiler (cfront) on each of the platforms? Are there some special libraries which differ for each platform? Maybe I should simply wait until we order the Amiga version and look at all the docs?
#25152From: Greg Comeau@Comeau CmptgJul 1, 1992 11:17 PM
There is nothing like a network price for the AmigaDOS version of Comeau C++. In such a case each node is considered a "fully" equiped single CPU in its own right. I may or may not be able to discount on manuals that you may not want and hence won't be sent. That depends strictly on the situation though.
#25199From: Vic WagnerJul 2, 1992 8:07 PM
Greg, Hmmmm, manuals would be neccessary ONLY for run-time library differences for the different platforms. We're a VERY small company (2 people and the manual goes in the bookcase), we just happen to have different kinds of machines, and put them on a network so that we can share data. I'm not sure how you view such a development setup (2 machines for development and debugging ALL of the rest for debugging). I suspect that we'd be interested in seeing your license to make sure we wouldn't be in violation. If you happen to have an electronic copy, mayhaps you could EMail it to us.
#25329From: Greg Comeau@Comeau CmptgJul 5, 1992 10:42 PM
>manual necessary ONLY for run-time library differences for the >different platforms I hope I did not give you misleading info, but I was speaking of Amiga specific compilers for the moment. Different platforms will definitely be different compilers. In any event, discounts are not offered until at least quantity 10, and at that still depends upon the situation. >VERY small…. 2 As mentioned: "There is nothing like a network price for the AmigaDOS version of Comeau C++." That would be 2 compilers needed. Applicable text would include: "This license is for the sole use on one computer…. You may not… transfer the program to any other machine." >… seeing your license…have an electronic copy There is no electronic version. But see above.
#25404From: Vic WagnerJul 7, 1992 12:57 PM
Greg, Ok, understand two compilers systems for the Amiga development. I'm puzzled that we would _need_ complete compiler systems for the other platforms, or am I mistaken in my belief that the output from 'cfront' on the Amiga would (should) compile on, e.g., MicroSoft C 6.0 on the PC. Although 'liveable', it would be a shame to have to run 'cfront' on each platform. Of course, the runtime libraries for each platform need to be different. What am I missing?
#25475From: Greg Comeau@Comeau CmptgJul 8, 1992 10:32 AM
Sorry, technically you would not _need_ the additional compilers, but the issues is not one without caveats. For instance, you mention that the RTL would need to be different. There's a bunch more issues. In respect to say the RTL since that was brought up, our license with AT&T USL is a package deal, hence although we could certainly sell only the RTL as a binary package, our fees would be the same, and hence subpackages would end up costing the same price and so no point in it (and in fact in custom cases we have charged "consultant type" prices and such for extra RTL's). We do have people who live with this with no problem. For instance, many of our customers use Comeau C++ as a cross compiler for an embedded system. Not only are the used to living with constrains, but in fact they add their own. Besides the embedded people though, we have found that a very high percentage of people initially thinking they wanted cross-compiling coming back because it just wasn't worth it. Issues like extra work. Issues like getting files out of sync, and you only need to do that once to agree that it is worth the price of the compiler (even the compilers we sell for a few $K). See, some of the other issues ranges from getting the proper include files in there, arranging the proper sizes and alignments of types and so on. None in isolation being being hard, but tending to be an annoyance, and definitely something easy to botch. And we've botched it ourselves as this is obviously part of the procedure of porting Comeau C++. I hope my emphasises came across right here. I mean don't get me wrong: said is definitely a feature of the compiler. And I would state that any C compiler that couldn't compile the output C code was broken without doubt. However, as mentioned above, that isn't the only issue, and I tend to say that said process can be annoying, costly, and delicate at times (this does not imply any technical flaw, just that extra work and intervention need to occur, and we all know us lousy humans).
#25489From: Vic WagnerJul 8, 1992 3:07 PM
Greg, Thanks. I _was_ really certain I wanted to do this…….. well, we'll have to sooner or later <grin>
#25263From: Al BenglenJul 4, 1992 7:13 AM
Bill, In another message you mentioned "Teach Yourseld C" which I understood to be the text written by Herbert Schildt and published by Osborned McGraw-Hill (since I have it). Now you mention "Teach Yourself C++". Please…who wrote and who published it? I assume your "Good job" comment to Comeau Computing refers to their making their C++ compiler consistent with "some standard" as used in the book. via Whap! Al Benglen 74615,500
#25273From: Bill RobertsJul 4, 1992 10:38 AM
Schildt also wrote "Teach Yourself C++" and it is published by McGraw-Hill. My comment to Comeau "Good job" should have been on it's own line. My reference was to let Comeau know that I think they did a good job on the compiler. I am assuming that they followed the ANSI standards, but since I don't have a copy of the standards, I can't be sure. I have tried the examples in the book, and so far, my only problems have been in my text entry capability. Bill Roberts in Ellettsville In. via Whap!
#25331From: Greg Comeau@Comeau CmptgJul 5, 1992 11:09 PM
>Schildt also wrote "Teach Yourself C++" and it is published by McGraw-Hill. Unfortunately, there is also another TYC++ from Al Stevens. >I am assuming that they followed the ANSI standards, but since I >don't have a copy of the standards, I can't be sure. For information purposes, it is worth noting that there is currently no ANSI C++ standard, however, the working draft currently in progress by the committee is based upon the language reference manual of Comeau C++ (we're based upon AT&T USL's cfront, and the base document used by the committee is literally the cfront reference manual. Note: don't read into this something I didn't say).
#25464From: Al BenglenJul 8, 1992 5:57 AM
Bill, Thanks (again) for your help. via Whap! Al Benglen 74615,500