The status of the GNU Fortran project
November 30, 2005
This article was contributed by Kenneth Geisshirt
Fortran is one of the oldest programming languages. With its roots
back to the 1950s at the scientific community, the language has
evolved heavily over half a century. The evolution of Fortran reflects
the changes in the computing industry. In the 1950s computers were
programmed in machine language, and translating mathematical formulas
into machine language was indeed difficult. The system for FORmula
TRANslation was developed.
Today, Fortran is primarily used by scientists and engineers.
There is a wide variety of free and non-free scientific software
written in Fortran. A lot of the free Fortran software comes from
University professors.
Just as important, a number of
small software companies develop and sell software for limited or
specialized market segments. Examples of such software is the quantum
chemistry package
Gaussian 03
and Adina,
the Finite Element System for Structures, Heat Transfer, and CFD.
In the UNIXes of the 1980s, the most common variant of Fortran was
Fortran-77. At AT&T Bell Laboratories the free translator f2c was
developed. Translation from Fortran-77 to ISO C required a large
runtime library in order to compile the resulting C code. Later, a
front-end for GCC, the GNU C compiler (now GNU Compiler Collection) was
developed using the same runtime library.
The GNU Fortran 77 (g77) team, lead by James Craig
Burley, stopped development after it was determined that g77
was sufficient to meet the requirements of its users.
The front-end is still included in the GNU Compiler Collection
prior to version 4. It is available at the
g77 Legacy Site.
In year 2000, a new Fortran project entered the GNU scene -
GNU Fortran 95 (G95).
The goal of the G95 project is to
implement the Fortran variant or standard from 1995 (ISO/IEC
1539:1997). Currently, no bugs are known!
With the release of version 4 of GCC
in April, 2005,
Fortran 95
was included as one of the
new languages.
In GCC 4, the Fortran 95 language is fully implemented.
A valid Fortran 95 program should compile, while an invalid Fortran 95
will be rejected. GFortran uses the Tree-SSA middle of GCC, and
therefore the same back-end (or code generators) and by that, GFortran
is supported on a large number of architectures. But there exists a
number of issues with the front-end including a need for
better error messages.
Fortran has a large number of intrinsic functions. These functions are
defined in the specification of the language, they are not
implemented as a library subroutine as you might see in languages like
C and C++. Examples of Intrinsic functions include the performing of
averages of elements in an array and calculating dot products between
two vectors/arrays.
The set of I/O intrinsic functions is still limited. Most programs do
not use the advanced I/O intrinsics, and these programs will work
perfectly. Software that uses advanced I/O intrinsics might
prove to be challenging to implement.
As of this writing, a large number of free software packages can be
compiled using GFortran. Of course, most of the available packages
are related to the scientific and engineering fields.
One of the nice things about GFortran programs is that you can suspend
them during runtime. When the program receives a QUIT signal, a core
dump will be generated. Later, you can restart the program from this
core dump. This is a useful feature when your software reaches the
CPU limit, this tends to be something that is tightly
enforced in supercomputing centers around the world.
Even though the
documentation is extensive, it might not be up to date
with the latest releases of GFortran.
Most of the development in the GFortran project is focused on
implementing new intrinsics and optimizing the implementation of the
existing intrinsics.
The web pages related to GFortran are not well maintained.
If you're looking for a non-technical role in a free software
project, here's your chance to make a contribution.
Comments (8 posted)
System Applications
Database Software
Firebird Future Development
Firebird database project coordinator Dmitry Yemanov presents a
project roadmap for upcoming Firebird development.
"
"What then?", - you ask. I'd describe Firebird 2.0 as "the version which removes the annoying limits". Sounds not so modest, I know. Let me explain better. No doubt that Firebird has a nice multi-generational architecture and a rich SQL language, an embedded usage and a good performance. But I'm sure almost everyone stepped on some internal limitations that worried or even shocked you."
Comments (5 posted)
PostgreSQL Weekly News
The November 27, 2005 edition of the PostgreSQL Weekly News is online
with new PostgreSQL database articles and resources.
Full Story (comments: none)
phpPgAdmin 4.0.1 Released
Version 4.0.1 of phpPgAdmin, a web-based administration tool for PostgreSQL,
has been announced.
"
A new point release of phpPgAdmin is now available that fixes some significant issues in phpPgAdmin 4.0. In particular, all issues related to non-English languages have been fixed."
Comments (none posted)
Embedded Systems
Optimizing Embedded or small Linux systems
Michael Opdenacker has announced
a free presentation on optimizing the speed, memory, power consumption,
and cost of embedded Linux systems.
"
At last! You completed the implementation of your embedded Linux system.
It functions as specified. Your boss cheers up and you start to taste
champagne in your month. However, it turns out that it doesn't boot fast
enough, its interface or its response time are too slow, its files are
too big and do not leave enough space for user files, or it consumes too
much power. You could fix these issues by using a faster processor, more
storage or a bigger battery, but this would make your system heat too
much or exceed its cost requirements."
Full Story (comments: 2)
Interoperability
Multiple Network Interfaces with Samba
Samba Team member Tim Potter
illustrates the use of Samba with multiple network interfaces.
"
Server and workstation machines that are running Samba often have multiple network interfaces. Sometimes it may not be prudent to allow Samba to be accessed over all network interfaces. This article describes the smb.conf parameters used to restrict Samba to only use particular network interfaces, and how to test this is actually working using some Unix command line tools."
Comments (none posted)
Libraries
LTI-Lib 1.9.15 available (SourceForge)
Version 1.9.15 of LTI-Lib, an object oriented computer vision library,
is available, it features an important bug fix.
Comments (none posted)
Networking Tools
BitTorrent 4.2.0 Released
Version 4.2.0 of
BitTorrent,
a system for distributing uploads and downloads, is out with bug fixes.
See the
change log for details.
Comments (none posted)
Web Site Development
Mod_python 3.2.5b released
Version 3.2.5b of
Mod_python,
the Apache web server module for the Python language, is out.
See the
online manual for the latest change information.
Comments (none posted)
Wiki 0.5.0 released (SourceForge)
Version 0.5.0 of Wiki for phpWebSite
is available.
"
The new 0.5.0 release adds many new features:
Option to format wiki page names before displaying,
Ability to switch off certain menu items,
Added discussion feature (Comments module required), and
Template changes to give theme developers greater flexibility."
Comments (none posted)
Document Modeling with Bricolage (O'Reilly)
David Wheeler
applies Bricolage to the task of document modeling on O'Reilly.
"
Previous Perl.com articles have reviewed where Bricolage fits into the universe of content management systems and worked through Bricolage installation and Bricolage configuration. Now it's time to go through the steps required to model the structure of an existing web page in Bricolage. Part of the motivation for the redesign of the Bricolage website last summer was to create good examples of document types and templates for use in Bricolage itself. You can take advantage of that work by analyzing a page on the current Bricolage site to determine how to break it down into its basic elements."
Comments (none posted)
Desktop Applications
Audio Applications
Audacity 1.2.4 and 1.3.0 Released
Versions 1.2.4 and 1.3.0 of
Audacity,
an easy to use multi-tracking sound recorder/editor with VU meters, is out.
"
Audacity 1.2.4 is a new stable version of Audacity. It includes a couple of bug fixes and minor improvements and is recommended for all users. Audacity 1.3.0 is a beta release that contains hundreds of new features, but this version is unfinished and unstable, and is recommended primarily for advanced users. You can install both Audacity 1.2 and 1.3 simultaneously."
Comments (none posted)
jack_capture v0.0.1
The initial release of jack_capture is available for use with the
Jack Audio Connection Kit.
"
jack_capture is a small simple program to capture whatever
sound is going out to your speakers into a file.
This is the program I always wanted to have for jack, but no
one made. So here it is."
Full Story (comments: none)
QjackCtl 0.2.19a fix released
Release 0.2.19a of QjackCtl, a GUI controller for the Jack Audio
Connection Kit, is out.
"
Just to let you know about this small-fix release on QjackCtl,
that only affects the MIDI connections (re)nomenclature:
- ALSA sequencer client/port name aliases are functional again; all
actual MIDI sequencer client/port numerical identifier prefixes are also
back in business.
Apparentely, this has been missed for quite a while, almost since
0.2.16. Only noticed this late week, thanks to Domenico Culturato."
Full Story (comments: none)
Rivendell v0.9.61 announced
Version 0.9.61 of Rivendell, a radio automation system, is out
with bug fixes and usability improvements.
Full Story (comments: none)
Business Applications
phpBMS v0.61 Released (SourceForge)
Version 0.61 of phpBMS
has been announced.
"
phpBMS is a PHP, MySQL based billing, scheduling, and client management system. Features include PDF generation for printing, mass e-mailing to clients, repeatable task and event handling, and quote/order/invoice tracking.
The package has undergone many bug fixes and several enchancements including the ability to attach external files to product, client or invoice records."
Comments (none posted)
Data Visualization
Grace 5.1.19 released
Version 5.1.19 of
Grace, a WYSIWYG 2D plotting tool for the X Window System,
has been announced.
"
This is a maintenance release of the 5.1 series; an upgrade is recommended."
Comments (none posted)
Desktop Environments
GARNOME 2.13.2 announced
Version 2.13.2 of GARNOME, the bleeding edge GNOME distribution
is out.
"
A lot has changed since the last unstable release.
This release includes all of GNOME 2.13.2 plus a few updates that were
released after the freeze date for GNOME 2.13.2.
As of this release, the GARNOME project will be hosted on the GNOME
servers, being more tightly integrated with the GNOME infrastructure."
Full Story (comments: none)
GNOME Software Announcements
The following new GNOME software has been announced this week:
You can find more new GNOME software releases at
gnomefiles.org.
Comments (none posted)
K Desktop Environment 3.5 Released
The
KDE Project has announced a new
release of the K Desktop Environment. "
Stephan Kulow, KDE Release
Coordinator, said: "The improvements made in the past year show how mature
the KDE Project is. KDE is the most powerful desktop environment and
development platform in the market. With huge changes expected in KDE 4,
our next release, KDE 3.5 should provide users with the perfect
productivity platform for the next couple of years."" Click below
for the full announcement.
Full Story (comments: 1)
KDE Software Announcements
The following new KDE software has been announced this week:
You can find more new KDE software releases at
kde-apps.org.
Comments (none posted)
Electronics
New OpenCollector Releases
The latest new electronics software on
OpenCollector.org
includes asco 0.3.10, a SPICE circuit optimizer with an emphasis on
mobile communications devices, and Icarus Verilog 20051127,
a Verilog simulation and synthesis tool.
Comments (none posted)
Games
new WorldForge releases
The latest releases from the
WorldForge game project include
Sear 0.6.0, Cyphesis 0.5.4, internationalization of the WorldForge
Update Tool, and more.
Comments (none posted)
GUI Packages
Imendio AB announces the GTK+ on Mac OS X port project (GnomeDesktop)
GnomeDesktop
covers the release
of GTK+ on the Mac OS X platform.
"
The GIMP toolkit (GTK+) matures to include yet another platform. This
project aims to bring native GTK+ support to the Apple Mac OS X
platform. The basic implementation is sponsored by Imendio AB and the
work so far has been done by Anders Carlsson (of Imendio). This project
means that another critical step is taken in the effort to spread this
very successful library collection to all commonly used platforms."
Comments (16 posted)
Imaging Applications
Comix 2.1 released (SourceForge)
Version 2.1 of
Comix, an image viewer for comic books, is out.
"
Version 2.1 contains a lot of changes. No big stuff really, but it's all about the details isn't it?"
Comments (none posted)
Tux Paint 0.9.15 released
Version 0.9.15 of Tux Paint, a drawing program for children, is out.
"
The new release introduces new "Magic" drawing tools, including
a smudge tool, brushes that draw grass and bricks, and a brush that
turns realistic images into cartoons.
Tux Paint 0.9.15 also offers a number of improvements on previous
versions, including updates to the "Text" and "Stamp" tool interfaces,
improvements to the color palette, and support for a wider range of
display sizes -- from 640x480 to 1600x1200."
Full Story (comments: none)
Interoperability
Wine Weekly Newsletter
Issue #299
of the Wine Weekly Newsletter is out with the latest Wine project
news. Read about the release of Wine 0.9.2 and other topics.
Comments (none posted)
Medical Applications
MirrorMed Announcement (LinuxMedNews)
The MirrorMed medical record system
has been launched.
"
MirrorMed is a friendly fork of the ClearHealth project. MirrorMed will use essentially the same codebase but will have a totally separate support structure, available from SynSeer."
Comments (none posted)
RSS Software
Hacking eBay: Turning Email Alerts into Atom (O'Reilly)
Bob DuCharme
uses Atom to process eBay email in an O'Reilly article.
"
From our geeky perspective, Atom and RSS seem to be sweeping through the internet, changing the way people and systems get notified about events. From a broader perspective, though, they've got a long way to go — we all have plenty of computer-literate friends who've never heard of either.
This means that plenty of opportunities remain to improve systems and applications using RSS or Atom. (Because Atom is the latest and greatest in the history of RSS formats, with endorsements from key representatives of the earlier formats, I'm going to focus on using Atom, but the basic ideas here would work for any flavor of RSS.)"
Comments (none posted)
Science
Open Babel 2.0.0 Released (SourceForge)
Version 2.0.0 of Open Babel, a chemistry file translation program
and chemistry software library,
is out.
"
Highlights of the 2.0 release include a new conversion framework making it easier to develop new translators, dramatically improved support for merging, splitting, and batch conversion, a framework for molecular fingerprints, similarity searching, a fast molecular database format, support for Perl and Python scripting "wrappers," automatic support for reading .gz (gzip) compressed files, support for the new IUPAC/NIST InChI identifiers and more."
Comments (none posted)
Web Browsers
Mozilla Firefox 1.5 Released (MozillaZine)
MozillaZine
reports
that the final release of Mozilla Firefox 1.5 is now available for download
from GetFirefox.com (or a mirror site) for most major operating systems.
See the
release
notes for additional details.
Comments (5 posted)
Galeon 2.0.0 Released (GnomeDesktop)
GnomeDesktop.org
covers
the release of version 2.0.0 of Galeon, a small web browser.
"
A Security Device Manager button was added in the security preferences. The delete key works in the Personal Data Manager. Support was added for multimedia keyboard keys like Back and Forward. Other bugs were fixed."
Comments (none posted)
mplayerplug-in version 3.16 released
Version 3.16 of
mplayerplug-in,
a browser plugin that uses mplayer to play digital media from websites,
is out.
"
Version 3.16 fixes some translations and improves stability".
Comments (none posted)
Languages and Tools
Caml
Caml Weekly News
The November 29, 2005 edition of the Caml Weekly News is online
with the weekly collection of Caml language articles.
Full Story (comments: none)
Haskell
Haskell Weekly News
The November 22, 2005
edition of the Haskell
Weekly News is online with the latest Haskell news. Topics
covered this week include new records, a first-person shooter written in
Haskell, new release of Haskell Server Pages, and future directions for
GHC.
Comments (none posted)
Haskell Weekly News
The November 29, 2005
edition of the Haskell
Weekly News is online with the latest Haskell news. Topics
covered this week include monads in other languages, GHC 6.6 progress,
and darcs repositories over P2P networks.
Comments (none posted)
Haskell Communities and Activities Report
The ninth edition of the
Haskell Communities and Activities Report has been released.
Take a look for the latest from the Haskell community.
Comments (none posted)
Java
Escaping the Java Trap
Mark Wielaard has published his
Java Roadmap,
A practical road map to the Free Software and Open Source alternatives.
"
For the last couple of years the community has been working to ensure that developers can create applications using the java programming language without having to depend on proprietary software. Today, the free (as in libre) implementations are already very capable and support a vast amount of functionality that developers expect from a java-like environment. Important large applications like JOnAS, OpenOffice.org 2, Eclipse 3 and Tomcat 5 are known to work. This document provides a road map of the various projects; how they work together, where they are, where they're going, and how we make sure that they work well and are compatible."
Thanks to David A. Wheeler.
Comments (none posted)
Lisp
SBCL 0.9.7 released
Version 0.9.7 of SBCL (Steel Bank Common Lisp) has been released.
"
This version provides better disassembly of SSE instructions for
x86-64, optimizations and bug fixes."
Full Story (comments: 1)
PHP Code Generation with Elisp (O'ReillyNet)
Zachary Kessin
works with PHP from Elisp.
"
There's plenty of near-repetition in software development; writing very
similar code over and over again. Stop copying, pasting, and modifying, and
start automating the process! Zachary Kessin shows how to use Emacs Lisp to
generate useful and reusable database-access code for PHP."
Comments (none posted)
Perl
YAPC::NA::2005 Conference Proceedings are now available
The conference proceedings from the YAPC::NA::2005 Perl conference
are available as ISO files for CD and DVD media.
"
You can now re-live the excitement from YAPC::NA::2005 because the
Toronto Perl Mongers, YAPC, and me, are happy to finally announce
the availability of the proceedings from YAPC::NA::2005 held in Toronto.
It contains HTML navigation pages, biographies, presentation slides,
audio and video recordings of the presentations and candid photos from
the daytime and nighttime activities."
Full Story (comments: none)
PHP
PHP 5.1.1 Released
Version 5.1.1 of
PHP has been announced.
"
This is a regression correction release aimed at addressing several issues introduced by PHP 5.1.0". See the
change log
file for more information.
Comments (none posted)
Python
Urwid 0.8.10 curses-based UI library for Python
Version 0.8.10 of Urwid, a curses-based UI library for Python,
is out.
"
This release includes three new tutorial chapters as well
as a big pile of bug fixes."
Full Story (comments: none)
Dr. Dobb's Python-URL!
The November 26, 2005 edition of Dr. Dobb's Python-URL!
is online with the latest Python articles and resources.
Full Story (comments: none)
python-dev Summary
The November 1-15, 2005 edition of the python-dev Summary is online
with coverage of activity on the python-dev mailing list.
Full Story (comments: none)
Ruby
Ruby Weekly News
The November 27, 2005 edition of the
Ruby Weekly News looks at the latest discussions
from the ruby-talk mailing list.
Comments (none posted)
IDEs
Eclipse Checkstyle Plugin 4.0.0 final released (SourceForge)
Version 4.0.0 of the Eclipse Checkstyle Plug-in
has been announced.
"
The Eclipse Checkstyle Plug-in integrates the famous Checkstyle into Eclipse.
With the plug-in your code is constantly inspected, supporting the developer with immediate feedback.
Never before was it this easy for developers to obey coding guidelines.
The Eclipse Checkstyle Plug-in provides a mighty but easy to use editor to create Checkstyle configuration files and gives great control how to deploy your corporate coding guidelines.
This release contains some huge improvements over its predecessor - in usability, compatibility and feature wise."
Comments (none posted)
Profilers
Valgrind 3.1.0 is available
Version 3.1.0 of Valgrind, a suite of simulation based debugging and
profiling tools, is out.
"
3.1.0 improves on 3.0.0 in three major areas. AMD64 support is much
improved, with transparent interworking of 32- and 64-bit executables.
32-bit PowerPC is now officially supported and is eminently usable.
Finally, memory management for all platforms has been overhauled,
allowing larger programs to run successfully. There have been many
other improvements and bug-fixes relative to the 3.0.X line."
Full Story (comments: none)
Version Control
monotone 0.24 released
Version 0.24 of
monotone,
a distributed version control system, is out.
"
The highlight of this release is the movement of keys to
~/.monotone/keys (on Unix, OS X) or %APPDATA%\monotone\keys (on
Win32).
A number of other changes have been made; in particular, when
upgrading, beware that "monotone serve" has had a change to its
command line syntax, and that on Win32 monotone now expects its
configuration file to be named %APPDATA%\monotone\monotonerc."
Full Story (comments: none)
Subversion 1.3.0 Release Candidate 4 released
Subversion 1.3.0 Release Candidate 4 is available, it features
many new features and bug fixes.
"
This is the first public Release Candidate for Subversion 1.3.0, as
problems were found with the previous three release candidates before
they were made publicly available."
Full Story (comments: none)
Miscellaneous
Modern Memory Management, Part 2 (O'ReillyNet)
Howard Feldman
discusses memory management issues in part two of an O'Reilly series.
"
Modern Unix-like operating systems have their own characteristics for
allocating and using memory. Howard Feldman explains how modern programming
languages use memory, why this matters, and how to avoid memory and resource
leaks."
Comments (none posted)
Page editor: Forrest Cook
Next page: Linux in the news>>