TweetFollow Us on Twitter

New Symantec Tools
Volume Number:11
Issue Number:12
Column Tag:Development Environments

New Symantec Development Tools

A grand assortment of tools for all developers

By Rich Parker, Modesto, CA

Symantec’s New Subscription Plan

Symantec has long been known for producing a wide assortment of development tools. Some of these tools were marketed as individual products and some as collections. THINK C and Symantec C++ come to mind as examples of the two different approaches - where the C++ product included THINK C as well as the C++ environment. Symantec has also offered a Symantec Developer’s Advantage (SDA) program for a while. This subscription plan has offered developers who want all of the tools the advantage of having everything, including Apple-created code, on a single CD.

Starting with the release of the Symantec C++ for Power Mac (version 8, release 4) update, Symantec is simplifying its product line to include only two products:

• Symantec C++ for 68K (version 7.0.5)

• Symantec C++ for Power Mac (Version 8, Release 4; includes v7.0.5 for 68K development)

The 68K version of the product comes on floppy disks (about 16 of them!). The Power Mac version is available on CD-ROM only, and includes all of the current development environments, utilities, Apple-developed code, and third-party extras (over 600 megabytes of source code, demonstration applications, and documentation).

Everyone who purchases and registers the Power Mac version from now on will automatically be enrolled in the new Symantec C++ Subscription for Macintosh (formerly called the Symantec Developer’s Advantage), and will be sent the next two CD-ROM updates of the product free of charge. All existing registered 8.x customers and Symantec Developers Advantage customers have been automatically enrolled in the new subscription service and are being proactively sent Release 4 and Release 5 (when it comes available) free of charge as well.

The existing Symantec C++ for 68K product is priced at $79, and a trade-up from any previous version of the 68K Symantec or any Metrowerks product is only $49.95. For those who are interested in developing for 68K Macs, this is a real bargain.

The price of the Symantec C++ for Power Mac product is $399, and a trade-up from any previous version of the Symantec or Metrowerks products is $149.95 and includes the subscription and two free updates.

So What Do You Get in the 68K C++ Product?

The 68K product includes all of the elements of the previous Symantec C++ version 7.0.4 distribution, including the following components:

• THINK Project Manager (TPM) development environment (v7.0.4)

• THINK Debugger

• THINK Inspector

• Visual Architect (VA)

• THINK Class Library (TCL)

• Standard libraries, including ANSI libraries, IOStreams, and the Standard Template Library (STL)

• C and C++ compilers, THINK Rez resource compiler, resource copier, and “.o” Converter

Of course, this means that the original THINK C product is being superseded by this new product, which raises the memory requirements bar somewhat. The TPM has a preferred memory requirement of 5 megabytes, with a minimum requirement of 3.2 megabytes. In addition to this, system temporary memory is used to hold the precompiled headers when compiling. So it is reasonable to expect that one would need to have at least 8 megabytes of RAM in one’s system to permit the TPM, debugger, and the program being debugged to coexist in memory during the testing process. One thing I’ve found in looking at all of the new development environments, both for the Macintosh and for Windows platforms, is that memory requirements for development tools are steadily rising. We should feel lucky that 32-bit C++ development is even possible on an 8 megabyte Macintosh. On the Windows front, 32-bit development demands at least 16 megabytes of RAM, with 20-24 megabytes preferred.

Increased memory requirements notwithstanding, this product provides a greatly enhanced development capability. The Visual Architect alone is a wonderful tool for creating TCL-based applications. We lost the ability to use the TCL with the latest version of the THINK C product, and I think that loss was significant. Many people have had to step up to C++ for that fact alone. In retrospect, my own feeling is that moving from what has been called a C+ language to full C++ has been good for everyone who has learned and used THINK C and the TCL in the past.

In addition to its built-in editor, the TPM environment has a very useful graphic class browser that shows the class hierarchy of a project, after it has been first compiled, by means of boxes that contain the class name and lines that connect the members of the hierarchy. By clicking on any class name box and holding down the mouse button, a pop-up menu of all of the class’s methods is displayed. By choosing one of the method names in the menu, the browser opens the corresponding source file and brings the selected method into view. Double-clicking on any class name box causes the browser to open its associated class description (header) file and display its contents.

The Visual Architect tool (VA) is a superb graphic user interface design tool. And the VA is not only a GUI design tool, but it generates code for a complete application skeleton that can be compiled and run without having to write a single line of code. This is a tremendous facility for creating applications very quickly. Of course, we still have to add the custom code that makes the application unique, but the mere fact that all of the scaffolding for the application is put into place, automatically, cannot be dismissed. It is a major factor in the ability to create complex applications quickly and easily.

The THINK Debugger is an important component in this product, as well. I have never needed to use a low-level debugger, such as TMON or even MacsBug, for my projects. Admittedly, my projects are neither huge nor terribly complex, but they are projects in which debugging is an integral part of the development process. I often use the Data window to see the contents of variables, and I have often wished that the THINK Debugger would offer the stack display that was so useful in the THINK Pascal (Lightspeed) debugger. Of course, the stack display is now part of the Symantec C++ for Power Macintosh Debugger, but that’s a story for later in this article. When the environments for 68K and Power Macintosh development are finally merged in a future Symantec release, then we will undoubtedly see this feature in the 68K debugger, or at least that’s my hope.

I’d also like to comment on the very worthwhile functionality of the THINK Inspector. This module, when launched while a program is being debugged, allows one to look at each of the existing objects created by the application to examine the current state of its instance variables. Being able to do this, in parallel with execution of the program in the debugger, is of great value in many cases.

All in all, the new Symantec C++ for 68K development product is a very worthwhile upgrade.

If the 68K Product is So Good, What’s So Great
About the Symantec C++ for Power Macintosh Product?

The answer to the foregoing question is, simply, the availability of a world of Power Macintosh development tools. I think that it is clear to almost everyone that Apple is planning on moving all of its future product releases onto the Power Macintosh platform. We’ve already heard that Apple doesn’t plan to release any more 68K-based desktop machines, and we’ve already seen new Power Macintosh notebook computers hit the retail shelves. Clearly the 6100, 7100, and 8100 machines were a huge success. And fueled by that success, Apple has recently released many new models that rely not only on the original PowerPC 601 chip, but also on the 603 and 604 chips. Let there be no question about it. The Power Macintosh platform is the future basis for all new Macintosh models.

With Apple’s intentions in mind, let’s examine the contents of the Symantec C++ for Power Macintosh (version 8, release 4) product offering. It consists of many different and independent tools and frameworks, so I’ll cover them individually in the sections that follow:

Latest Symantec Tools

This folder contains the latest official release of the Symantec C++ for Power Macintosh tools, including the following:

• 68K Macintosh Development (only), including Symantec C++ for Macintosh (v7.0.5) and THINK Pascal (v4.0.2 and including the THINK Class Library v1.1 and MacApp v2.0 class library for use with THINK Pascal)

• Power Macintosh Development (only), including the complete Symantec C++ for Power Macintosh development environment and tools

• Power Macintosh and 68K Development, including both the Power Macintosh (SPM) and 68K (TPM) development environments and tools

• THINK Reference online Macintosh toolbox, standard library, and TCL reference databases

• Goodies folder, which includes AppleScripts for automatically converting CodeWarrior projects for use in the Symantec Project Manager, a compiler toolkit for dropping in other compilers into the environment, AppleEvent and external editor information, technical support goodies (including Universal Headers for Pascal), and Key Binder for assigning custom key commands.

The Symantec C++ for 68K product is the same as the standalone product that was described earlier. All of the tools and features of that product are provided and are useful for 68K development only (although these apps run emulated on a Power Mac). The components in the Symantec C++ for Power Macintosh product are listed as follows:

• Symantec Project Manager (SPM) development environment (v8.0.3)

• Symantec Debugger (SD)

• Visual Architect (VA)

• THINK Class Library (TCL)

• Standard libraries, including ANSI libraries, IOStreams, and the Standard Template Library (STL)

• C and C++ compilers, Power PC assembler, Symantec Rez resource compiler, resource copier, and XCOFF converter

Symantec may have been late in releasing its Power Macintosh development tools, but it is steadily moving ahead with new and innovative solutions for Power Macintosh developers. The Symantec C++ 8.0 product (reviewed in the June 1995 issue of MacTech) served as their introduction of a new development environment, the Symantec Project Manager (SPM). This environment is completely new, having been written from scratch. It provides a user interface not unlike the TPM, but with some significant improvements. The Power Macintosh development environment is available in a FAT version that allows Power Macintosh native code to be developed on a 68K machine; however, in order to debug the code, a Power Macintosh computer will be required.

The SPM includes a new class browser that I find much more useful than the graphic browser in the TPM environment. The new browser offers three panes that display classes, methods, member variables. The source code for a selected method, the class declaration, or the definition of a selected member variable can be displayed in the fourth pane. Classes can be sorted alphabetically or hierarchically; the Classes, Methods, and Variables panes can be stacked vertically with the source pane to the right, or horizontally with the source pane on the bottom. The source pane offers the same syntax highlighting and other features of the main source code editor.

An entirely new debugger is provided for use with the SPM. The new debugger has the ability to show the contents of stack frames, including symbolic names and associated values of all objects and their member variables. The calling arguments of individual functions can be easily determined by examining the display. This new facility is very much like the old THINK Pascal debugger, but is much better and easier to use. An associated Data window provides the ability to enter variables or expressions and have these evaluated to show their results. Expressions can include calls to functions in the source code and the display will show the results of these calls. The Symantec Debugger requires the use of Apple’s Debug Services background application, which is included on the CD.

Prerelease Symantec Tools

In addition to the Symantec tools described in the previous section, the release 4 CD contains quite a number of unreleased but very useful updates and prerelease tools, including the following:

• Version 8.0.4d8 of the Symantec Project Manager (SPM)

• Version 1.0.4d2 of the Symantec Debugger

• Version 8.1d3 of the Visual Architect

• Version 8.1.0d4 of the XCOFF converter for the SPM environment, and version 1.0d2 of the XCOFF converter for the TPM environment

• Version 1.0b4 of both the SPM Rez and TPM Rez resource compilers

• Version 8.1.0d14 of the SPM C and C++ compilers, the latter of which includes full native (0 runtime overhead) C++ exception handling and full ANSI-standard RTTI (Run-Time Type Identification) support, including dynamic_cast<> syntax

• Version 2.0.7 of the THINK Class Library

• Apple Computer’s “Mr C” and “Mr C++” optimizing compilers in the form of “drop-in” translators for the SPM environment, as well as precompiled headers for Macintosh libraries and the TCL

• Version 1.3 of MacMindy, a Dylan byte-code compiler in the form of a “drop-in” translator for the SPM environment, including Mindy libraries and a shared library for the SPM

Even though the prerelease versions of the new Symantec C and C++ compilers support native exception handling and RTTI, they still don’t support explicit templates. Template support is still provided via the use of #pragma directives. The up-side of this is that template classes can be debugged with the Symantec Debugger, just the same as any other classes; but the down-side is the increased complexity of having to use the #pragma directives. I’m told that Symantec is working on this problem and that it is primarily a Linker issue that will be resolved in a future release of the product.

Support for Apple’s “Mr C” and “Mr C++” compilers is an especially important new feature in the current release, as these compilers produce significantly faster executable code (22% on the average) than the leading Macintosh compilers. I found that the compile time for a TCL project was quite long when using the “Mr C++” compiler, compared to the Symantec C++ compiler. Symantec admits that these compilers are not optimized for compile speed, but rather they are optimized for highly efficient executable code. Three major Macintosh compilers were used to compile and execute the Nullstone test suite (a set of 5337 tests endorsed by Apple, Symantec, IBM, Microsoft, and Metrowerks) using a Power Macintosh 6100/60 with 24 Mb of RAM, no virtual memory, modern memory manager, and no network connections (AppleTalk disabled). The summary results of the tests are as follows:


Bugs Compiler NS Rate % rate of MrC

31 CodeWarrior 7 1279731 77.6%

1 Symantec C++ for Power Mac 1280119 77.6%

0 Symantec C++ w/ Mr C 1649052 100.0%


As is evident in the foregoing table, the “Mr C” compiler came out in front, with the Symantec and Metrowerks-compiled code running neck and neck for execution speed.

The MacMindy translator comes with a number of Dylan demonstration programs, all of which can be compiled and executed in the SPM environment, and documentation in text and HTML (hypertext) formats. The MacMindy translator was developed by Carnegie Mellon University and was converted to run as a translator inside the SPM environment. In addition to compiling Dylan code, the SPM editor is fully capable of providing Dylan-style syntax highlighting, including the ability to assign colors and styles to keywords, comments, and other syntax elements. I was able to compile the “Modules” MacMindy application without difficulty; however, I was only able to execute the compiled application outside the development environment. When attempting to execute it within the environment, one of the Mindy libraries couldn’t be found. My guess is that it was already open by the environment and that was the result of the error. This isn’t a big worry, mainly because this is prerelease software.

Apple Software

The new release 4 CD contains a large amount of software developed by Apple. Symantec has continually worked closely with Apple to provide tools that support both the MPW and Symantec development environments. The collection of tools in this set includes the following:

• Symantec and MPW-compatible versions of the OpenDoc DR3 release, including full source code for the OpenDoc Foundation class library (ODF), as well as SPM project models and pre-built OpenDoc libraries, utilities, and demonstration parts. Full documentation (over 18 megabytes) of the ODF, OpenDoc, and CALib components is provided in Acrobat format (an installer for Acrobat is also included on the CD).

• A complete, hard-disk-ready copy of MPW version 3.4b7, including all of the interfaces, libraries, scripts, and tools (including MrC and MrCpp compilers). The product includes support for the 68K Code Fragment Manager, which is also included in this prerelease version of MPW. Full documentation of MPW, including Building Programs in MPW, MPW Command Reference, and MPW 411 help files, is provided in DocServer format.

• MacApp version 3.1.4 and version 3.3a4 are both included as hard disk-ready folders. Both versions are compatible with MPW and the SPM, with AppleScript scripts and project models pre-built for using MacApp in the SPM environment.

• SourceServer versions 1.0.1 and 3.4b7 are included.

• ToolServer versions 1.1.1 and 3.4b7 are included.

• MacsBug versions 6.2.2 and 6.5d12 are included, along with Discipline version 2.0.2.

• The latest release version (1.0) of the Macintosh Debugger for the Power Macintosh and also prerelease versions of both the Power Macintosh (2.0f1) and 68K (2.0b1) Macintosh Debugger are provided. Both the Power Macintosh and 68K versions come with the appropriate version of Apple’s Debug Services background application and full documentation in DocServer format.

• Version 2.1.3 of ResEdit and its extensions are included.

• SPM projects and patches for the Developer release of QuickDraw 3D are included, so that development of applications using this new technology can be accomplished in the SPM environment.

• Latest interfaces, libraries, control panels, and extensions are provided for ColorSync, Drag Manager, QuickTime 2.0, Thread Manager 2.1, and QuickDraw GX features.

All in all, there are over 310 megabytes of tools, libraries, and source code in the Apple Software suite. The availability of hard disk-ready versions of MPW, MacApp, OpenDoc, and SPM support for the various frameworks is sufficient reason to purchase this product. I installed OpenDoc and used the SPM ODF project module and the accompanying “Prep ODF Part” AppleScript to create a complete (skeleton) ODF part within the SPM environment. Be prepared to spend a lot of disk space if you intend to install the OpenDoc, SOM, ODF sources, and QuickDraw GX support files and libraries. Those four folders alone will require over 50 megabytes of disk space. I had created a System and SPM development capability on a 105 megabyte SyQuest cartridge and had only about 40 megabytes to spare when I saw that I also needed to include those files. Instead, I put aliases to the versions contained on the CD into the aliases folder in my SPM folder and was able to get by. I doubt that this would be very workable on a permanent basis. I’ve been told that attempting to compile and debug the ODF sources requires 40 megabytes of RAM, but I’ve not been able to confirm that.

Third Party Goodies and Utilities

The release 4 CD contains demonstration applications, tools, and utilities from various sources. These are all useful development tools and are provided for your evaluation and use. Some of the tools are shareware (such as the Alpha 6.0b6 editor) and some are demonstration versions of commercial products (such as the BBEdit 3.5 demo editor). Demonstration versions of the NeoAccess cross-platform database, Resorcerer resource editor, Application Vise, CMaster, ScriptGen Pro, QUED, and others are provided.

Conclusions and Symantec’s Future Directions

It looks to me like Symantec has pulled out all of the stops in this new CD-ROM release. All of the software, including many of the prerelease components, worked just fine on my 6100/60 machine. There is such a variety of software and documentation on the CD that it is impossible to describe it all to the extent it deserves. If you’re interested in OpenDoc, then the documentation alone is overwhelming in its scope and substance. If you plan to develop with both the MPW and SPM environments, then this product offers that capability. If you want to use MacApp instead of the TCL, then that choice is available for both environments too. And of course, if you still own a 68K Macintosh, then the product includes complete C, C++, and Pascal development environments, as well as the ability to create OpenDoc parts using the 68K Code Fragment Manager components.

Symantec intends to ship release 5 around the February 1996 time frame, and release 6 in the late Spring of 1996. Release 7 will be shipped in the Fall of 1996. These future releases are planned to feature reduced memory requirements, integrated 68K support, more comprehensive support for OpenDoc and other hot new Apple technologies, and performance enhancements. Symantec says that we can expect to see full support for all of the great new capabilities that Apple’s upcoming Copland operating system release will provide. They have been working closely with Apple for several months in preparation for the delivery of new features and support in the Symantec C++ for Power Macintosh product line.

I can find little fault with Symantec’s direction. I, like some of my colleagues, wish that the integrated 68K support was available right now, but even so, I have successfully ported TCL-based projects from the 68K TPM to the Power Macintosh SPM environments without a hitch. The very fact that the Visual Architect, the TCL, and other library sources are shared by the two environments helps to ensure that applications built with the two environments will be almost identical.

Note from the Publisher:
Symantec C++ for Power Mac Bound Into This Issue

Symantec felt that the best way for you to understand their product was to play with it. As a result, Symantec asked MacTech to bind in a “lite” version of the Symantec C++ for Power Macintosh product into this issue of the magazine. Obviously, the lite version does not include many of the items mentioned in the foregoing sections. What is included are the following:

• A full-featured time-limited (using the system clock) version of the PowerPC development tools is provided, including the Symantec compilers for C and C++, MrC and MrC++ compilers, resource compilers, drop-in assembler, XCOFF converter, and environment, linker header files, and libraries.

• Sources are not provided for the TCL or standard libraries. These are provided in binary form and a shared library version of the TCL will be included.

• Demos and samples of Mr C and Mr C++ nullstone performance benchmarks are included.

• All of the documentation for all of the Symantec products, including the Table of Contents from the latest CD, is included.

After the enclosed CD was mastered, Symantec discovered a problem with the included Visual Architect. You can get a version which works correctly via the Symantec ftp server and also in diskette form from Symantec Technical Support.

The Visual Architect updater can be found in: ftp://ftp.symantec.com/public/devtool/mac/updaters

Symantec Technical Support can be reached at 541-465-8470.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Latest Forum Discussions

See All

Top Mobile Game Discounts
Every day, we pick out a curated list of the best mobile discounts on the App Store and post them here. This list won't be comprehensive, but it every game on it is recommended. Feel free to check out the coverage we did on them in the links... | Read more »
Price of Glory unleashes its 1.4 Alpha u...
As much as we all probably dislike Maths as a subject, we do have to hand it to geometry for giving us the good old Hexgrid, home of some of the best strategy games. One such example, Price of Glory, has dropped its 1.4 Alpha update, stocked full... | Read more »
The SLC 2025 kicks off this month to cro...
Ever since the Solo Leveling: Arise Championship 2025 was announced, I have been looking forward to it. The promotional clip they released a month or two back showed crowds going absolutely nuts for the previous competitions, so imagine the... | Read more »
Dive into some early Magicpunk fun as Cr...
Excellent news for fans of steampunk and magic; the Precursor Test for Magicpunk MMORPG Crystal of Atlan opens today. This rather fancy way of saying beta test will remain open until March 5th and is available for PC - boo - and Android devices -... | Read more »
Prepare to get your mind melted as Evang...
If you are a fan of sci-fi shooters and incredibly weird, mind-bending anime series, then you are in for a treat, as Goddess of Victory: Nikke is gearing up for its second collaboration with Evangelion. We were also treated to an upcoming... | Read more »
Square Enix gives with one hand and slap...
We have something of a mixed bag coming over from Square Enix HQ today. Two of their mobile games are revelling in life with new events keeping them alive, whilst another has been thrown onto the ever-growing discard pile Square is building. I... | Read more »
Let the world burn as you have some fest...
It is time to leave the world burning once again as you take a much-needed break from that whole “hero” lark and enjoy some celebrations in Genshin Impact. Version 5.4, Moonlight Amidst Dreams, will see you in Inazuma to attend the Mikawa Flower... | Read more »
Full Moon Over the Abyssal Sea lands on...
Aether Gazer has announced its latest major update, and it is one of the loveliest event names I have ever heard. Full Moon Over the Abyssal Sea is an amazing name, and it comes loaded with two side stories, a new S-grade Modifier, and some fancy... | Read more »
Open your own eatery for all the forest...
Very important question; when you read the title Zoo Restaurant, do you also immediately think of running a restaurant in which you cook Zoo animals as the course? I will just assume yes. Anyway, come June 23rd we will all be able to start up our... | Read more »
Crystal of Atlan opens registration for...
Nuverse was prominently featured in the last month for all the wrong reasons with the USA TikTok debacle, but now it is putting all that behind it and preparing for the Crystal of Atlan beta test. Taking place between February 18th and March 5th,... | Read more »

Price Scanner via MacPrices.net

AT&T is offering a 65% discount on the ne...
AT&T is offering the new iPhone 16e for up to 65% off their monthly finance fee with 36-months of service. No trade-in is required. Discount is applied via monthly bill credits over the 36 month... Read more
Use this code to get a free iPhone 13 at Visi...
For a limited time, use code SWEETDEAL to get a free 128GB iPhone 13 Visible, Verizon’s low-cost wireless cell service, Visible. Deal is valid when you purchase the Visible+ annual plan. Free... Read more
M4 Mac minis on sale for $50-$80 off MSRP at...
B&H Photo has M4 Mac minis in stock and on sale right now for $50 to $80 off Apple’s MSRP, each including free 1-2 day shipping to most US addresses: – M4 Mac mini (16GB/256GB): $549, $50 off... Read more
Buy an iPhone 16 at Boost Mobile and get one...
Boost Mobile, an MVNO using AT&T and T-Mobile’s networks, is offering one year of free Unlimited service with the purchase of any iPhone 16. Purchase the iPhone at standard MSRP, and then choose... Read more
Get an iPhone 15 for only $299 at Boost Mobil...
Boost Mobile, an MVNO using AT&T and T-Mobile’s networks, is offering the 128GB iPhone 15 for $299.99 including service with their Unlimited Premium plan (50GB of premium data, $60/month), or $20... Read more
Unreal Mobile is offering $100 off any new iP...
Unreal Mobile, an MVNO using AT&T and T-Mobile’s networks, is offering a $100 discount on any new iPhone with service. This includes new iPhone 16 models as well as iPhone 15, 14, 13, and SE... Read more
Apple drops prices on clearance iPhone 14 mod...
With today’s introduction of the new iPhone 16e, Apple has discontinued the iPhone 14, 14 Pro, and SE. In response, Apple has dropped prices on unlocked, Certified Refurbished, iPhone 14 models to a... Read more
B&H has 16-inch M4 Max MacBook Pros on sa...
B&H Photo is offering a $360-$410 discount on new 16-inch MacBook Pros with M4 Max CPUs right now. B&H offers free 1-2 day shipping to most US addresses: – 16″ M4 Max MacBook Pro (36GB/1TB/... Read more
Amazon is offering a $100 discount on the M4...
Amazon has the M4 Pro Mac mini discounted $100 off MSRP right now. Shipping is free. Their price is the lowest currently available for this popular mini: – Mac mini M4 Pro (24GB/512GB): $1299, $100... Read more
B&H continues to offer $150-$220 discount...
B&H Photo has 14-inch M4 MacBook Pros on sale for $150-$220 off MSRP. B&H offers free 1-2 day shipping to most US addresses: – 14″ M4 MacBook Pro (16GB/512GB): $1449, $150 off MSRP – 14″ M4... Read more

Jobs Board

All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.