Ada-ASSURED 3.2 Release Notes
Introduction
GrammaTech, Inc. is pleased to announce the new release of
Ada-ASSURED 3.2. This release contains a number of
improvements over Ada-ASSURED 3.1. This document
describes these improvements.
Ada Utilities
GrammaTech is proud to announce its new product,
Ada-Utilities, which is an integrated collection of
tools for analysis, transformation, and pretty printing of Ada 83 and
Ada 95 code. The tools include:
- Ada-Audit
- Ada-Audit is a tool for creating, viewing, and maintaining a
database of style and standards violations. Ada-Audit is delivered
with definitions keyed to the Software Productivity Consortium (SPC)
Ada Quality and Style Guidelines for Professional
Programmers, and can be extended with customizations for your
product.
- Ada-Prettyprint
- Ada-Prettyprint is a high-quality pretty printer for Ada 83 and
Ada 95. Ada-Prettyprint follows the presentation rules of the SPC
Guidelines; however, it may be tailored to follow your
project's coding standards.
- Ada-Grep
- Ada-Grep is an Ada language-sensitive version of the UNIX
grep utility that supports structured searches of source code
based on the constructs in the Ada language.
- Batch Mode
- Ada-Utilities allows the user to run
Ada-ASSURED in batch mode. The batch operation of
Ada-ASSURED is controlled via the
Ada-ASSURED Scripting Language, Scheme. The
Scripting Language provides programmatic access to Ada code as an
abstract syntax tree. Using the Scripting Language, you can analyze
and transform Ada code using structural, rather than textual,
operations.
We are pleased to announce the extensive integrations between
Ada-ASSURED and several other development tools:
- Aonix ObjectAda development
environment
- Green Hills MULTI development
environment
- Cayenne TeamWork design
tool
The integrations provide direct navigation between source code
elements in Ada-ASSURED and operations in each of the
integrated environments.
- Aonix ObjectAda
-
The Aonix ObjectAda development environment
provides an excellent Ada83 and Ada95 compiler and tools for
navigating through Ada source code. The tight integration from
Ada-ASSURED to ObjectAda
facilitates the compilation, navigation, and understanding of a
source code library being developed or maintained.
- compilation
- From within Ada-ASSURED,
you can easily invoke the ObjectAda compiler and jump
directly from a list of compilation errors to the corresponding lines
of source code.
- navigation
- Using information stored during compilation,
Ada-ASSURED enables you to find the declaration
and uses of a code element.
- understanding
- To help understand the source code,
Ada-ASSURED and ObjectAda can
show you the call graph, dependency graph, and type hierarchy of
a particular code element.
See the online Ada-ASSURED-ObjectAda
Integration help system for more details.
- MULTI
-
The Green Hills MULTI development
environment provides high quality Ada83 and Ada95 compilers, a
configuration management system, and navigation tools for a library
of Ada source code. The tight integration between
MULTI and Ada-ASSURED facilitates
the compilation, version control, navigation, and understanding of a
source code library being developed or maintained.
- compilation
- From within Ada-ASSURED, you can easily
invoke the MULTI compiler and jump directly
from a list of compilation errors to the corresponding lines of
source code.
- configuration
management
- You can access all the MULTI configuration
management commands from within
Ada-ASSURED. This makes it faster to check
files in and out, and view differences in the source code
between versions.
- navigation
- Using information stored during compilation,
Ada-ASSURED enables you to find the declaration
and uses of a code element.
- understanding
- To help understand the source code,
Ada-ASSURED and MULTI can show
you the call graph, dependency graph, and type hierarchy of a
particular code element.
See the online Ada-ASSURED-MULTI
Integration help system for more details.
- TeamWork
- In addition to the integration with TeamWork
version 6, we now offer an integration with version 7. The
integration with the new version contains the same functionality as
the older TeamWork integration.
- Online Documentation
- All Ada-ASSURED
documentation is now available online in HTML format. This includes:
- Read Me First
- Release Notes
- Installation Guide
- User Guide And Reference
Manual
- Tutorial
- New Web Browser Protocol
- A specialized protocol for communication between the web browser
eMosaic and Ada-ASSURED allows a hotlink in eMosaic
to bring up a file within Ada-ASSURED. This feature
in used in the Ada-Audit product.
- Improved Customizability of Error Messages
- It is now possible to dynamically change the text of error,
violation, or indicator diagnostic messages via the scripting
language. See function sg:change-diagnostic-message!
- New Enforcement Parameter: Blank Before Left
Paren
- A new enforcement parameter Blank Before Left Paren has been
added to control pretty-printing of Ada constructs that contain a
left parenthesis.
- Subtype Declaration Alignment
- Previous versions of Ada-ASSURED did not align
subtype declarations. This feature has been added, so that
type and subtype declarations are consistently
formatted and aligned on the is keyword.
- Form Feed Characters
- Ada-ASSURED will preserve form-feed characters
in the input file. In addition, new transforms permit adding
form-feed characters interactively.
- Improved Context-Sensitive Help
- The improved the context-sensitive help makes it is easy to
navigate from any Ada construct in the source code (e.g., a
case-statement or machine code directive) directly to the
corresponding section of the Ada 83 or Ada 95 Language Reference
Manual.
To use this feature, position the insertion cursor on any source
code element. The context field in the the left right corner of
the editor window will show the name of the current Ada
construct. The menu Help / Describe Context will
bring up the corresponding section of the LRM.
We have added the following additional Scheme functions and
variables:
- sg:change-diagnostic-message!
- sg:cwd
- sg:get-selection-end
- sg:get-selection-start
- sg:get-structural-selection-end
- sg:get-structural-selection-start
- sg:is-aa83
- sg:is-aa95
- sg:make-selection-dialog
- sg:ordered-traverse
- sg:preserve-tabs
- sg:raise-window!
- sg:string->term
- sg:term->string
- sg:term-xline-max
- sg:term-xline-min
- sg:write-permission?
See the Scripting Language chapter for details.
- Shell scripts
-
All shell scripts included with Ada-ASSURED
(e.g., install, aa, pprint,
mk_license) are now in sh instead of
csh. This makes them more reliable across various
architectures.
- New version of STk
- We now use STk version 3.1.1 instead of version 3.0b2.
Ada-ASSURED 3.2 contains many fixes and
improvements. This section lists the more serious bugs that have been
fixed.
- Fixed bug in pretty-printing of record types. This bug caused
the is keyword to occasionally be placed on a separate
line from the record keyword.
- Several bugs in text-replace and structure-replace have been
fixed. These bugs caused intermittent crashes with text paste, and
with the sg:replace! Scheme function.
- Tabs were too large in TEXT mode.
- The font in the status pane was too large with default text
size of 18 pt.
- Set structural selection command had bug that caused crashes in
interactive editing, and using the Scheme function
sg:set-structural-selection!.
- The command cd did not cause the default
directory to change for commands such as save-as
and open.
- No warning message was issued if a user tried to open a file
that was already open.
- Ada-ASSURED keyboard macros did not record
search and replace commands.
- The command kill-to-end-of-line had a bug that
caused crashes in interactive editing.
- Scheme function sg:replace!:
- Used to force the left hand side value to be at a resting
place.
- Fixed bug that caused list replacements to fail.
- Fixed type checking bug of replacement term or
primitive.