From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,9923b1c3be80099b X-Google-Attributes: gid103376,public From: mfeldman@seas.gwu.edu (Michael Feldman) Subject: Ada on the Mac (was: AppletMagic stuff) Date: 1996/10/06 Message-ID: <5395s7$bu8@felix.seas.gwu.edu> X-Deja-AN: 187175459 references: <324BF60E.4DEF@gsfc.nasa.gov> <533bki$d5n@felix.seas.gwu.edu> organization: George Washington University newsgroups: comp.lang.ada Date: 1996-10-06T00:00:00+00:00 List-Id: In article , Matthew Heaney wrote: >Yes, there is a market for any and all Ada-related products for the Mac! I'm glad you think so; so do I. A problem has been that the Ada community has pointed at the Mac and said "small market". And the Mac software development market has looked at Ada and said "small market". In this "deadly embrace", nothing happened. >Remember that historically Mac programming was done in Pascal; learning Ada >would be just a baby step for those programmers. Compiler vendors: why not >tap that market? Many Mac programmers preferred Pascal and were furious when Apple and the compiler vendors jumped on the C++ bandwagon with everyone else. At least Apple has produced "universal headers" to interface with the toolbox libraries. That is what we've built on in developing the bindings that come with GNAT-Mac. >If you're not conviced: I just took a seminar at Carnegie Mellon. In the >classrooms where they teach CS there were row and rows of computers...all >Macs! This is true of many universities. Rumor has it that when the "academic Ada" contract folks walked away from the Mac, the decision was based on a market survey that asked which universities are teaching Ada on Macs. Of course, the answer was essentially zero, because no usable compiler existed. >I am told Carnegie Mellon is the best school in the country for learning >CS, and they chose Macs. You the Ada compiler vendors have chosen the best >language, so why the best computer, too? I've always thought that the Ada and Mac communities should be kindred spirits, natural allies, because both Ada and Mac have been damaged by the "market share is the only thing that counts" business planning that, IMHO, is ruining our industry. >Symantec, Metrowerks: how about an Ada compiler for the Mac? Not very likely; they would see this as just undercutting their existing compilers, diminishing the market for each. >Apple: how about helping port GCC/GNAT to MPW? (If there's anyone out >there with info about an MPW port, or about how to do such a port, or is >doing it and wants some help, please contact me.) Apple won't have to do much; I think it'll happen anyway. Keep in touch with Cygnus about their port of the _GNU_ stuff to MPW. That is coming along, according to rumors I hear. Once there is an up to date and stable _GNU_ infrastructure for MPW, you can start with the sources for GNAT-MachTen and go from there, presumably by cross-compilation and tweaking the runtime, just like any other GNAT port. The GNU back end will exist already for MPW. * * * * * * As has been discussed many times in this group, the Mac comes with no command-line interface on which a traditional development environment can be built. One is always forced to purchase an IDE. MPW is one popular IDE (it's produced by APPLE, but Apple has always been wishy-washy in its support thereof); Symantec and Metrowerks' CodeWarrior are the other two biggies. The point is that realistically, an Ada must fit into one of these, or... ...then there's MachTen, which Tenon has marketed mainly to UN*X folks for X and Internet applications. It's a nice, stable, BSD-ish system, especially in its recent PPC incarnation. The nicest part of it is that - like SoftWindows - it runs alongside MacOS, in a Mac window, so - unlike Linux - you don;t have to decide whether to boot MacOS or MachTen. I regularly run MachTen alongside my other MacOS apps - Word, Excel, Netscape, Claris Home Page, etc. It turns out that MachTen is a perfectly respectable UN*X development environment. If you prefer an editor with Mac look-and-feel, use BBEdit. I regularly do so to develop Ada code for the Mac; MacOS and MachTen ASCII files are interoperable, so I can develop code using BBEdit, save the file, then use gnatmake from the MachTen command line to build it. On MachTen, GNAT looks like any other GNAT. * * * * * Recall that GNAT is intimately tied in to the GNU software, and it would be nearly impossible to extricate it, even if you thought it was an advantage to do so. Metrowerks actually looked at this, and concluded that there was no legal way to connect their back end to the GNAT front end. GPL-style free software just doesn;t mix with proprietary stuff in the way Metrowerks desired. We on the GNAT-Mac team investigated many different paths to a GNAT for the Mac, and chose MachTen mainly because the GNU stuff is an inherent, and well-supported, part of MachTen. The MPW GCC, OTOH, was just getting started. So was MkLinux, and we further decided that it was uninteresting because you lose your MacOS when Linux is running. And it doesn't even support the full range of PowerMacs yet. * * * * * Sure, MachTen costs a few hundred bucks, but it is a much more useful system than Linux, at least right now, and Tenon is committed to keeping their GNU infrastructure stable and up to date. If you're willing to buy a copy of MachTen, you'll find the GNAT for Mac a pretty decent system already. Bindings to a pretty large number of toolbox libraries are provided, and genuine, double-clickable Mac apps can be generated. The standalone apps do not themselves require MachTen. This is similar to the MPW style in which a program can be built either as an MPW tool or as a free-standing app. Currently, the only big thing missing from the GNAT-Mac distribution is the ability to link _tasking_ programs as standalone apps. This is changing fast; we expect to have a standalone tasking runtime ready for release in the very near future, quite possibly with 3.07. Keep your eyes open for announcements from Tenon about some interesting forthcoming releases of MachTen that will include GNAT and be priced competitively. >Perhaps a better name for the Java compiler would be AppleMagic? Sigh... I wish it were so. > >-matt Mike Feldman