From: chandra@bongoaisg.com (Periannan Chandrasekaran)
Subject: C++ Product List - Version 2.03 - PART 5/5
Reply-To: chandra@bongoaisg.com (Periannan Chandrasekaran)
Organization: Accura Innovative Services Inc.
Date: Tue, 25 Aug 92 21:30:36 GMT


5.  Tools
_   _____

     In this section we will cover  C++  tools  which  helps
developing C++ and other programs. Some of these are already
being covered in the previous chapters and are omitted here.

5.1.  Interviews Drawing Editor
_ _   __________ _______ ______

+    It   is    available    via    anonymous    ftp    from
     interviews.stanford.edu

+    On line drawing tool capable of interactive line  draw-
     ing  and  filling.  It creates a postscript file. Files
     created by Idraw can  also  be  imported.  It  supports
     split view, grouping, ungrouping etc.

5.2.  Interviews Interface Builder
_ _   __________ _________ _______

+    It   is    available    via    anonymous    ftp    from
     interviews.stanford.edu

+    Interactive Interface building tool which  creates  C++
     code  which  can  be compiled with other Libraries sup-
     plied with Interviews.

5.3.  FIELD C++/C/Pascal Development Environment
_ _   _____ _   _ ______ ___________ ___________

+    It is available from Brown University. Instructions for
     "semi-anonymous"  ftp  can be obtained by sending name,
     business   address,   phone   and   fax    number    to
     brusd@cs.brown.edu.   Alternatively,  a  request may be
     faxed to Kathleen Kirman at (401)863-7657.

+    FIELD programming environment  provides  an   extensive
     set  of  tools  for  programming  in C++, C and Pascal.
     FIELD uses the tools of the Brown Workstation  Environ-
     ment (BWE), which in turn runs on top of X11.

     Various utility tools  provided  by  FIELD  programming
     environment includes the following:

     -    C++ class browser (cbrowse).  This is more  power-
          full  when  compared  to iclass provided by Inter-
          Views.  It offers graphical  as  well  as  textual
          output.   The  drawbacks  are that it is much more
          slower than  iclass,  and  it  needs  a  lot  more
          memory.

     -    debugger. The debugger in this environment runs on
          top  of dbx or gdb.  It supports both GNU and AT&T
          compilers.

     For more information, refer to the following papers

     1.   Steven P. Reiss, "Connecting Tools  using  Message
          Passing  in the FIELD Program Development Environ-
          ment", IEEE Software, July 1990, pp 57-67.

     2.   Steven  P.  Reiss,  "Interacting  with  the  FIELD
          Environment",  Software:  Practice and Experience,
          20:S1, June 1990, pp. 89-115.

     3.   Steven P. Reiss and Scott Meyers,  "FIELD  Support
          for C++", USENIX C++ Conference Proceedings, April
          1990, pp. 293-299.

+    Information provided by Scott Meyers (sdm@cs.brown.edu)

5.4.  MTS (Memory Tuning System)
_ _   ___  ______ ______ ______

+    Platform: Unknown

+    Commercial product marketed by :
     NewCode Technology Incorporated
     200 Boston Avenue
     Medford, MA 02155

     Tel: (617) 396-3009
     Fax: (617) 395-9452

+    MTS includes a malloc interface that  guarantees  quick
     installation.  Its  use does not require any reprogram-
     ming.  It includes a report facility that  details  the
     different  types  and sizes of a programs memory usage.
     Using the report, MTS can be tuned for a  typical  pro-
     gram run.  For object oriented programs, this mechanism
     provides a memory management scheme for each  class  of
     object in use.  Using MTS, the developer is relieved of
     the need to write  specific  code  to  optimize  memory
     access.

     NewCode's MTS employs a hierarchy of memory  management
     schemes  that  are designed to fulfill the dual purpose
     of minimizing paging activity while providing very fast
     allocation  and  reuse  of  many  small and medium size
     objects.  As an in memory allocator, MTS  is  typically
     three  times  as  fast  as the standard malloc package.
     More importantly, its contribution to minimizing paging
     overhead  can  lead to dramatic improvements in overall
     program performance.

+    Information    provided    by:    Ze'ev    Mehler     (
     zeev%cybvax0@uunet.uu.net )

5.5.  Cback
_ _   _____

+    Platform:  Works with the Cfront  output.  Tested  with
     SUN3, SPARC, RS6000, DEC RISC, Interactive Unix and SCO
     Unix/Xenix on 386/486.

+    Commercial product marketed by :
     NewCode Technology Incorporated
     200 Boston Avenue
     Medford, MA 02155
     Tel: (617) 396-3009
     Fax: (617) 395-9452

+    cback is a companion product to cfront based C++ trans-
     lators.   It processes cfront C output and creates easy
     to read, smaller, faster and portable C code.

+    Information    provided    by:    Ze'ev    Mehler     (
     zeev%cybvax0@uunet.uu.net )

5.5.1.  Introduction
_ _ _   ____________

     cback is a fast, rule driven, C to C translator that in
addition to producing C code that is easy to read and under-
stand,  CAREFULLY  eliminates   unreferenced   declarations,
unreferenced static functions, redundant assignments to vptr
and performs many other cfront specific cleanups.   Each  of
cback's  rules  can be turned on or off to suit a variety of
different needs.

cback does a thorough job of  simplifying  cfront's  compli-
cated  statements and expressions.  Even complex cfront out-
put that your local C compiler might  reject,  will  compile
without  fault.  cback's  output  is  maintainable  and will
readily cross compile to systems that currently do not  sup-
port C++.  cback typically eliminates 70% of cfront's C code
output.

While debugging, cback will shrink the  overall  size  of  a
typical  application  by  40%.  Thus during development your
binary files as well as link and debugger load times will be
substantially smaller and faster. When compiling with optim-
ization, cback can also produce significant code size reduc-
tions.

cback will fit seamlessly into your compiling and  debugging
environment. Our supplied shell script will call both cfront
and cback and will work with your current  make  files.   In
addition,  cback  will recreate appropriate line numbers and
for Sun's cfront it will filter  .stab  statements  for  use
with dbx.

5.5.2.  Netcomments
_ _ _   ___________

        From: Dale Lutz (dal@mdavcr.mda.ca) on comp.lang.c++

        We used cback on a rather large development (300,000 lines of C++) and
        found it to be extremely worthwhile.  On the average, the size of
        executables and object files after using cback was one half the
        pre-cback size.  Link times were also about 1/2 what they were before.
        Of course, your mileage may vary.  In our case, you can guess it didn't
        take too long to repay our original investment.

        We were using SUN C++ 2.0 on SUN SPARCStations.

        Dale

        (Not an MDA spokesman, and not affliated with the cback maker in
any way.
        Its just a great product I want other people to know about).