John Prentice of Quetzal Computational Associates, a company with extensive experience in the production of major scientific programs, has summarized the advantages of Fortran 90 as being "more concise, efficient, readable, less error prone, and better suited to modern computer architectures than is possible with Fortran 77". He further points out that these reasons will force Fortran compiler vendors from now on to put their optimization efforts into the facilities new to Fortran 90. So, although Fortran 77 code can be compiled with Fortran 90 compilers, those who continue to only Fortran 77 will be missing out on performance.
Elf90 - low cost Fortran
90
Elf 90, Lahey's new economical Fortran compiler, is now
available for immediate delivery. The price is $295 or $130 for
universities. Elf90 is ideal for those who want an inexpensive 32
bit Fortran compiler. Elf90 is Fortran 90 with some obsolete
features removed. All these features are generally recognized as
being poor programming practice because errors in current Fortran
programs can frequently be traced to their use. Examples include
ASSIGN, BLOCK DATA, COMMON, DATA, DO LABEL, DOUBLE PRECISION, END,
END BLOCK DATA, ENTRY, EQUIVALENCE, EXTERNAL, GOTO (computed), GO TO (assigned), INCLUDE, and INTRINSIC.
Elf90 is an excellent compiler for those who want to learn
Fortran 90. In fact is was specifically designed for this.
LF90 UPGRADE OFFER
Until 31 December 1995 anyone who has F77L, F77LEM/32, LF90, or any
other 32 bit Fortran compiler for the PC may obtain LF90 for $995.
This is a 25% discount on the normal price. To obtain the special
offer pricing just mail or fax a copy of the cover page of your
manual with your order.
LF90 VERSION 2
LF90 version 2 should be available in December. The cost to
upgrade from version 1.10 of LF90 is $275 inclusive of shipping.
The version 1.10 disks should be returned. Those who purchased
LF90 version 1.10 on or after 1 September will receive version 2 at
no cost. Version 2 of LF90 contains four major enhancements over
version 1.10. These are:
- An INTERACTER graphics subset library instead of Graphoria.
This enables the creation of DOS, Windows 3.x, Windows 95 and
Windows NT applications from within LF90. Windows menus and dialog
boxes can be inserted into Fortran applications. The printer and
video card installed for Windows is the one used by LF90 programs
compiled with the INTERACTER subset library. Current
INTERACTER users may upgrade to the full INTERACTER Windows library
at special prices until 31 March 1996.
- ED, the Programmers Editor, fully customized for Fortran 90
replaces the current Lahey Editor. The Ed editor has many powerful
facilities which greatly enhance programmer productivity.
- 32 bit DLL support. This was originally scheduled for
release in the "second quarter" of this year. LF90 can now
generate 32 bit DLLs. These in turn can be used in applications
produced by any compiler which supports 32 bit DLLs.
Examples include 32 bit Visual C++ and Visual Basic
4.0.
- P6 support. The P6 CPU from INTEL should be available before
the end of the year. Version 2 of LF90 has a P6 switch which will
optimize for execution speed on the PCs having this CPU. Floating
point operations in particular should be substantially
accelerated.
SPEED IMPROVEMENTS with LF90
While there can be significant variations most Lahey users with
Pentium PCs can reasonably expect increases in execution speed of
20% when their source code is compiled with LF90 rather than with
F77LEM/32. We have had people report increases of 40% in their
production code. Further efficiencies can be obtained if array
expressions are used to replace DO LOOPs. One investigator has
found that the parts of his program dealing with arrays executed in
half the time when array expressions were used. Another, Dr. D
Jenssen, reports that one of his programs which makes extensive use
of double precision complex numbers runs 2.5 times faster when
compiled with LF90 (version 1.10i) than with Microsoft
PowerStation. He also has found on his Windows 95 system LF90 compiled programs run 25% faster under Windows 95 DOS prompt than
if run under a vanilla DOS (the DOS provided if Windows 95 is not
started up). Between version 1.10c and 1.10i he finds his programs
generally run 10% faster.
EPC FORTRAN 90 - for SUN, SGI, and
RS/6000
Edinburgh Portable Compilers (EPC) have excellent Fortran 90
compilers for SUN, Silicon Graphics and RS/6000 based computers.
EPC's powerful source code debugger, edb, is included with the SUN
and SGI compilers. The EPC Fortran 90 compiler gave very
favourable results when compared with other Fortran 90 compiler for
the SUN in "Performance Benchmarks for Optimizing Fortran 90
Compilers" (May/June 1995 Fortran Journal. Evaluation copies of
the EPC compilers with a one month period of operation can be
obtained for $300. This amount is deducted from the full price if
a decision to purchase is made.
FORTRAN 90 WORKSHOP
Tom Lahey lead a Fortran 90 workshop in Melbourne which began
October 16 and lasted four days. A practical approach was taken.
Formal presentations were given but the stress was on participants
obtaining a concrete knowledge of salient Fortran 90 features by
incorporating them into their own Fortran 77 code during the
workshop. A significant part of the program was discussion on
points which arose as a result of this porting exercise.
VAST90
We are now distributors for Pacific-Sierra Research. They produce
Fortran77 to 90 translators (VAST/77to90) and Fortran 90 to 77
(VAST/f90) source code translators for a wide range of Unix
computers including SUN, IBM RS/6000, HP9000, DECstation 5000, DEC
Alpha, Silicon Graphics, CONVEX and VAXstation VMS.
The VAST/77to90 translator automatically upgrades existing
Fortran 77 programs to efficient Fortran 90. It reformats the
source code, does extensive diagnostic checks and carries out the
following conversions - removal of obsolete features, Fortran 77
declarations to Fortran 90 declarations, reduction and, where
possible, elimination of GOTOs and labels, generation of array
syntax in place of DO and IF loops, creation of MODULEs from
COMMONs, creation of MODULEs from INCLUDEs, and automatic
generation of interface blocks. Other facilities include
translation of VAX Fortran structure definitions and references
into Fortran 90 derived types and reference, a trace debugging
option which inserts print statements for each event (branch,
assignment, subroutine call, if test etc) in the program, and user
directives within programs to control the translation of individual
loops to array syntax. Switches give the user full control on
what conversion operations are carried out. The translation
process is fast. A program of 8000 lines took 21 seconds on a
Sparc 10. An article describing VAST/77to90 by one who has used it
to migrate tens of thousands of lines of Fortran 77 appeared in
Fortran Journal July/August 1993.
The VAST/f90 translator is of particular interest to those who have a Fortran 77 compiler and wish to program in Fortran 90 since
it converts a Fortran 77 compiler into a Fortran 90 compiler. As
reported by John Prentice in his recent comparison of Fortran 90
for SUN platforms in Fortran Journal May/June 1995 if the Fortran77
compiler is of high quality then use of the VAST/f90 front end
produces excellent results.
Prices for a singe concurrent user on one machine are $1300 for
either VAST product described above or $1700 for both.
VAST/77toHPF translates Fortran 77 to High Performance Fortran.
It should be an essential tool for those wanting their Fortran77
programs to take full advantage of computers which use parallel
processing. For most applications it is hard to translate
automatically for completely efficient execution on distributed
systems. The automatic translation carried out by VAST/77toHPF
should thus be considered a tool not a total solution. Please
contact Computer Transition Systems for further information.
Pacific Sierra also produce an optimizing preprocessor for
both Fortran and C which can significantly improve the performance
of programs on superscaler platforms. Please contact Computer
Transition Systems for details.
SALFORD FORTRAN - EDUCATIONAL SITE LICENSE
OFFER
For a limited time Salford is offering unrestricted site licenses
for their FTN77 and their FTN90 Fortran compilers to educational
institutions. The prices are a very cost efficient way for a
university to cover all their purchases of Fortran compilers for
both research and teaching.
FTN77 Fortran 77 compiler for DOS and Windows 3.1. This
includes ClearWin+, a module which makes development of Windows
programs very easy. The cost is $6500 plus a $1700 support and
update service fee for the first and two subsequent years.
FTN90 Fortran 90 compiler. The cost without ClearWin+ is
$9500 plus a $1475 support and update service fee for the first and
subsequent two years. The cost with ClearWin+ is $13,000 plus
$1700 support and update service fee for the first and subsequent
two years.
All site licenses include two copies of documentation.
Additional documentation may be purchased at any time.
NEW SALFORD DEBUGGER
With the latest release of Salford compilers users have the option
of using the beta release of Salford's new debugger, SDBG. When
SDBG is started the user is presented with three movable and fully
resizable windows. These contain the source code of the module
being debugged, the variables that are accessible from the current
point in the program and the current call stack. The next line to
be executed is highlighted in red. Separate watch windows for
specified variables can be created. These are updated at each
breakpoint. Multiple source windows are also available. Each time
you enter and new function a new source window is opened. This
allows one to instantly see the source statement which activated
the current function call. Context sensitive help is now available for all debugger functions. The current window and debugger status
will determine witch help screen is displayed.
GRAPHORIA DISCONTINUED
As mentioned in the latest Lahey "Fortran Source" the
Lahey Graphoria graphics library is no longer being offered. We
have one copy for LF90, one copy for F77L and two copies for
F77LEM/32 which we are offering at more than 50% off as a closeout
special. The respective sale prices are $165, $230, and $230.
LINUX FORTRAN 77 COMPILER -
$995
Absoft reports that they have users who are successfully using
their SVR4 Fortran 77 compiler with LINUX.
We can supply this compiler for $995 (universities $750.)
INTERACTER NEWS
In our previous newsletter (August 1995) we somehow neglected to
mention that Windows/INTERACTER for the Salford FTN77 and FTN90
Windows compilers has been released. Two libraries are included.
One for the DOS/DBOS based compilers and another for the Win32
compilers. The former allow generation of executables for Windows
3.1 and Windows 95 whereas the latter allows generation of true
Win32 programs for Windows 95 and Windows NT. Virtually all
existing programs should run straight away when compiled relinked
with the Windows library, but most programs will benefit from some
minor changes to produce a more Windows-like look and feel. Such
changes will not restrict programs to the Windows environment.
INTERACTER is a portable library which allows Fortran programmers
to provide high quality graphics and user interfaces in their
programs.
As mentioned elsewhere in this newsletter, with version 2
Lahey are using a subset of the INTERACTER graphics library in
LF90. This will allow the generation of Win32 executables with
LF90. A Windows /INTERACTER for LF90 version 2 has also been
released.
INTERACTER is upgraded twice a year. Version 3.10 was
released October 27. Customers who purchased new licenses or
upgrades after 1 October 1995 will receive a free 3.10 upgrade.
New features in this release include
- complete new "look" Toolkit. It will have a Windows-like
appearance on all platforms.
- optional 3D "look" option of windows/menus/input-fields/forms. This dramatically enhances the
appearance of programs running graphics mode under DOS, X
Windows, and Microsoft Windows.
- framed fields in forms.
- colour tags can be embedded in window output to highlight
words or strings. This has been used
extensively in INTHELP to highlight subroutine and variable
names.
- CGM graphics driver. This provides an additional means of
transferring graphical data to word
processing and desk top publishing packages.
- a data filter routine which converts random (x,y) spot
heights to a gridded array which can then be
used with the INTERACTER 2D and 3D contouring routines.
- various Windows-like features to further ensure Windows
compatibility (e.g. automatic support for
Alt keys in menus, trimmed menu strings in horizontal
menus).
- arrow drawing routines.
- bigger polygons.
- graphics proximity checks (e.g. "is this point inside this
polygon?").
- dynamically allocated raster graphics buffer under Fortran
90 compilers.
- 3D surface plots viewable from any angle.
- substantial improvement to graphics performance under
Windows.
- a two volume wirebound manual.
- a Windows/INTERACTER for LF90 version 2.0. The price is
$995. Special upgrade prices are available
until 31 March for current LF90 INTERACTER
users.
- an INTERACTER package for either LF90 or Salford compilers
which includes versions for both DOS and Windows. The
cost is $1495.
- a lower priced ($1495) X Windows version for many UNIX
Workstations.
Significant improvements in the INTERACTER Toolkit have also been
made. Major changes include:
- Windows version available for the first time.
- a Windows-like user interface is employed on all
platforms.
- Toolkit programs can now operate in graphics mode on most
displays.
- a royalty free distribution license is now bundled free of
charge.
MATH77
MATH77 ($175) is a mathematical subroutine library produced for the
Jet Propulsion Laboratory by the California Institute of
Technology. The library is written in Fortran 77 and is provided
in source form on PC, Macintosh and Sun format diskettes. A 600
page user manual documents the more than 450 routines in Math77.
The content of Math77 is similar to that of the NSWC library and
the mathematics section of NAG and IMSL. Routines in the library
include generation of special functions, random number generators,
matrix solvers, solution of eigen vector and eigen value problems,
solution of systems of nonlinear equations, curve fitting, sorting,
roots of polynomials, interpolation, character based graphics, and
some statistics routines. One powerful routine not found in major
competing libraries is the finding of local minima of a
multivariate function with linear constraints. The maximum
likelihood routines in the statistics section are also noteworthy.
Demonstration drivers are provided for each subroutine in Math77.
FORTRAN on the Macintosh
We are now able to offer the leading Fortran compilers for the
Macintosh. These are the ABSOFT and Language Systems compilers.
After examining both we are convinced that they are high quality
compilers and are backed up with sound technical support. As we
become more familiar with them we hope to provide more details
concerning their relative strengths and weaknesses. We anticipate
that the compilers for the Power PC (PPC) will be of central
interest since they have the capability of producing programs which
execute at speeds similar to that achieved by 32 bit Fortran
compilers on Pentium based PCs. A brief summary of both products
is given below.
ABSOFT F77 SDK v4.1 for PPC - $995 (similar
compiler for 68K is $850)
- compatible with MacOS version 7.1.2 or later, 16 MB of memory
is recommended
- native PPC product
- easy to port Fortran 77 applications with basic GUI between
Windows 95/NT and Macintosh since Absoft produce compilers for
both platforms. A UNIX/386 compiler is also available.
- user friendly commando interface
- MPW (bundled) is used but for the PPC version has an ABSOFT
debugger, linker and other tools
- profiler, FTNCHEK static analyzer, and source code splitter
- flexible and easy to use make facility
- debugger supports the full syntax of FORTRAN and has 2D array
display capability
- debugger can be used on code which includes Absoft C/C++, Apple
C, and Apple PowerPC assembler in addition to Absoft Fortran
77.
- two basic graphics libraries, SuperPlotLite and MIG, are
provided
- native Fortran 90 version based on Cray technology will go into
beta in early 1996
- excellent support for VAX and IBM VS extensions
- a set of UNIX extensions
- complete access to Macintosh Toolbox routines.
- compatible C/C++ compiler available ($595)
LS FORTRAN PPC - $995 (similar compiler for 68K
machines is $750)
- 68K based code runs in emulation on PPC
- can produce target code for both PPC and 68K
- does not require floating point unit
- MPW is used - uses Macintosh debugger, and linker
- has a make facility, static analyzer
- excellent support for VAX, and Data General extensions
- compatible with MPW C and LS Pascal compilers
- complete access to Macintosh Toolbox routines. Optional
software (AppMaker $295) automates the calling of Toolbox routines
from Fortran.
- low cost (but lesser capability) student versions available 68K
$135, PPC $340.
- documentation includes language manual as well as a users
manual
ABSOFT FORTRAN77 for Windows95 etc.
As a consequence of taking on board the Absoft
Macintosh Fortran compiler we are now able to offer all their
Fortran compilers. These include products for UNIX/386 (Unixware,
SCO, and INTEL SVR4 -$1280 each), AIX 3.1 ($850) and Windows
95/and NT($995). The latter product (W95/NT) is probably of most
interest and will be the product described in what follows.
W95/NT is a native Windows 95 or NT application and can
produce executables for these environments and, via Win32s
(included), for Windows 3.1. It can directly generate Win32 DLLs
and also call any Win32 DLL. A powerful feature of the W95/NT
compiler is full support for direct use of the full Win32
application programming interface. There is no requirement for the
purchase of a second language or programming tools. A detailed
source code example of how to create a Windows application is
provided. This Windows interface can be added to any application
at compile time by just by setting a compiler option. One set of
source code can be maintained for both Windows and the Macintosh.
In both instances a compiler switch will allow the incorporation of
the native GUI.
The porting of code is facilitated by the W95/NT compiler
containing options which support VAX/VMS, IBM, Cray and major PC
Fortran extensions. There is full support for MIL-STD 1753
extensions and also and extensive range of UNIX functions.
Development tools provided with W95/NT include a make, and linker,
MRWE (Microsoft Runtime Windows Environment), a graphics library,
and the FX debugger. The latter supports intermixed Fortran,
C/C++( Microsoft) and assembly language. The graphics library,
SuperPlot, is quite unusual in that it provides an interactive data
visualization capability. You can interactively manipulate the
plot on the screen and display cuts by means of a "slicer"
facility.
We have undertaken a limited amount of testing of the Win32/NT
compiler. The indications are that it produces executables which
execute at about the same speed as those compiled by other 32 bit
PC Fortran 77 compilers.
COHORT CoPlot - quality data plotting
software
Computer Transition Systems is now able to offer the entire suite
of CoHort Software. This consists of a full line of high quality
graphics and statistics software for scientists and engineers.
Each program is an effective tool when used by itself, but the
various packages are even more effective when they used together.
CoPlot ($250) creates publication-quality, scientific graphs of
data and equations. Anyone who needs to produce technical
illustrations should find CoPlot a valuable tool. A senior
scientist from the CSIRO brought CoPlot to our attention. He has
used it extensively to produce the diagrams for his papers and
reports. He finds it an extremely flexible and very simple to
operate.
CoPlot is a ``What-You-See-Is-What-You-Get'' program. Your
graph is always on the screen as you modify it. Menus appear beside the graph so that you can specify which part of the graph
you want to modify and how you want to modify it. You see the
changes immediately. CoPlot's flexibility gives you absolute
control over the appearance of everything on the screen - line
widths, marker types, colours, grid lines, text attributes, kinds
of axes, error bars, etc. Dates, for instance, can be in
day/month/year format not just the American month/day/, year
format.
You can choose from 18 different kinds of graphs and maps (XY,
contour maps, Z-3D, histograms, 3D histograms, NChannel, grouped
bars, stacked bars, multivariate bars, polar graphs, 3D Bar charts,
100% bars, correlation matrix, triangle plots, origin, orthographic
maps, Mercator maps, and Albert conic maps). Up to 16 plots can be
on screen simultaneously. Eight different types of regression are
provided. Up to 99 data sets and 99 functions can be plotted.
Graphs can be saved so that they can be used as templates for
future graphs. Data entry is simple. A wide variety of data
import file types can be used - several types of ASCII text, dBase
II or IV, Excel, Lotus 123, Microstat II, Quattro, and binary data
files. Any number of floating point numbers can be entered and
edited with CoPlot's spreadsheet style data editor. Output can be
sent to a printer plotter or graphics file (Postscript, EPS, HPGL,
HPGL/2, PBM, PIC, CGM, PCX, Targa TGA, Scodl, WMF, WPG) selected to
any size of image at the highest resolution available on that
device. Colour printers are supported. Compatible screen displays
include VGA, Super VGA 800x600, and 1024x768 produced by some
cards. CoPlot can be used without a mouse but many operations are
much more conveniently carried out with a mouse. Most major brands
of digitizers can be used with CoPlot - either in place of a mouse
or as a digitizer.
The fully indexed spiral bound CoPlot manual has 380 pages.
A clearly written and a detailed tutorial is provided. Twenty
pages are devoted to discussing questions frequently asked by
users. Another section offers suggestions on what constitutes an
effective diagram. Excellent free technical support via email,
fax, phone, or mail is provided by CoHort.
CoDraw - technical drawing
software
CoDraw ($250, $595 bundled with CoPlot and CoStat)
is an extremely flexible drawing program designed to help you
create high-quality, technical drawings. CoDraw is convenient for
drawing apparatus diagrams, field maps, circuit diagrams, genetic
maps, chemical symbols, landscape designs, seminar announcements,
etc. You can also use it to add custom features to graphs from
CoPlot. CoDraw can create drawings with lines, splines,
Bézier lines, circles, arcs, ellipses, markers, filled
areas, Bézier filled areas, .PCX images, and text. CoDraw has very flexible, high-quality, text-drawing
facilities that use smooth outline (Bézier) fonts which can
be scaled to any size and rotated to any angle. CoDraw's character
editor lets you edit existing characters or create your own
characters and symbols.
You can obtain distance, length, angle,
area, and other information about existing objects or directly from
printed drawings and maps using the Get procedure with a digitizer.
The included editor allows drawings to be interactively altered
with the changes occurring immediately - What you see is what you
get. CoDraw can import, edit, and print vector
drawings from HPGL plotter files, Lotus PIC, CGM, AutoCad DXF, and
Adobe Illustrator EPS graphics files. PCX files can be imported.
CoDraw is well documented in a 220 page manual. A tutorial is
provided.
CoVis -a data animation
package
CoVis ($250) is an inexpensive data visualization/animation
package. CoVis is similar to CoPlot but is designed for animated
views of data sets. The need for smooth animation places limits
(compared to CoPlot) on the way information can be presented with
CoVis. The animation facilities include panning, rotation,
zooming, arbitrary viewing position, playing a sequence of frames.
A wide range of graph types can be handled by CoVis - Nchannel,
3D snake, point, contour (coloured 2D blocks in a 2D array),
volumetric (3D blocks in a 3D array), vector, and wireframe.
Volumetric graphs can be sectioned to reveal internal structures.
Animation output and display hardware devices are the same as those
for CoPlot (see previous article). A demo disk illustrating the
capability of CoVis is available on request. The 270 page manual
includes a tutorial to facilitate rapid learning of Covis
facilities.