jtfox@lion.waterloo.edu (Todd Fox) (03/14/88)
Several weeks ago I posted looking for a good Fortran compiler for the Mac. I got quite a few responses - most of which sounded like: Yeah, I'm looking for one too. Let me know what you get. Compiler people take heed. There seems to be a weak spot in the market here. I got some negative reviews of various compilers. These and my own I will share with you now. Microsoft It's the one we ended up using. You don't get to do any of the nice little file handling things that we all got used to with the IBM Fortrans we've used. (ie deleting files, getting directories) These things are useful to a lot of applications so I can't understand why it's been left out. They have this thing they call a toolbox that let's you do all those Mac things like play with windows and it appears to be the way to get at file creation/manipulation et. al. They kindly refer you to this 100 dollar book if you want to get deeper but they don't say if it'll do any of the stuff I'm interested in. The only way I know this stuff can be done is because they have a completely undocumented routine that renames a file using some toolbox generated pointers. Why stop there? Why not write a few more routines? They do have a print spooler and time and date routines though. I'm not sure why this compiler has such a time with large numbers of common blocks. The numerous IBM compilers we have used had no troubles at all and the IBM has much less memory to play with and it's segmented at that. Regardless, this compiler just wouldn't take it. I ended up taking most of the common blocks out of BLOCK DATA and initializing them with assignment statements (ie. x = 5). Needless to say, this took a great deal of time. I can't wait until I get this thing running and start to find all the bugs generated by typos. Another problem I've had is that the Microsoft compiler tends to squack at things that have made it through tons of other compilers on everything from an IBM 4341 to a microVax II to the IBM PC. Perhaps it's following the standard a little more closely but I don't think so. Not after all the compilers that this code has seen. This has certainly made porting a real pain in the butt. This is the first compiler I've ever seen that won't let you use unit 6 as the standard input and output. I thought this was a universal standard. More changes (thank god we used a variable here). The debugger bothers me to no end. It came so close to being a really nice one too. And the error messages are absolutely terrible - especially from the linker. Then there's the little things that I won't mention that make it just plain awkward to use. Redeeming feature: It compiles and links quite quickly. I don't know about the execution speeds yet - I'm not that far. The code it's generating (so far) is about 12% smaller than compressed code on the IBM-PC! Pecan I had high hopes for these guys but they never made it. Another guy at work did most of the work with this and barely got past step one. I found the manual absoulutely terrible. Perhaps one of the worst I've ever seen. The compiler is based out of a thing called the Power System. I believe that this is some sort of an environment that needs to be present for your application to run (don't quote me here). Of course this means the application takes up more room on disks when you ship it out the door. Anyway, all the documentation for the power system lists examples using PC-DOS and Pascal. But wait, I bought a Fortran compiler for a MAC???? I found that quite disturbing. A little Fortran manual came along too. It mostly contains references to the power system manual. Wonderful! The P.S. manual gives everal examples of getting the sytem date and time. Good, at least it does that much. Of course the example is in Pascal. Unfortunately, the Fortran compiler won't do this. You have to buy their Pascal compiler to write the routine in and then link it in with your Fortran code. They seemed to have noticed the need for these functions when making the Pascal compiler but not the Fortran. What little I did use this compiler after these observations did nothing my favour. Others (sent in by you, the members of the net.land community) I only got very general comments on other compilers. MacTran. PHHPPLLTTT. (I don't know how to spell that.) However I have been told that their version 3.0 may be pretty good. One net.lander informed me that MacTran tries to keep their stuff reasoanbly up to date (much more so than ABSOFT). ABSOFT Not too good but better than MacTran. One person told me about "Language System's FORTRAN-77". It's an MPW tool. (whatever that means). He said the specs and demos look really good (but they haven't had a chance to really beat it up yet). Those interested parties can call Language Sytems in Herndon, VA (703) 478-0181. Let me know if you do. I hope my review has helped people a little. It's the best I could muster up. Good luck to anyone venturing into the lonely world of Fortran on the Mac. -- Todd Fox JTFOX@LION.WATERLOO.EDU What? You were in the next room all this time? I would have just come over to see you!