Category: Programming

Fortran at 60

Today marks the 60th anniversary of the release of the original Fortran Programmer’s Reference Manual. Fortran was the world’s first high-level computer programming language, was developed beginning in 1953 at IBM by a team lead by John Backus. The first compiler was

Posted in Programming Tagged with:

Backward Compatibility

“Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.” — Antoine de Saint-Exupéry The Fortran standards committee generally refuses to break backward compatibility when Fortran is updated. This is a good

Posted in Programming Tagged with:

Syntax Highlighting

Decently syntax highlighted Fortran code on the internet is hard to come by. None of the major sites where people are likely to visit to learn about Fortran have it: The Google Groups hosting of comp.lang.fortran (I don’t really expect much from

Posted in Programming Tagged with:

Intel Fortran Compiler 17.0

Intel has announced the availability of version 17.0 of the Intel Fortran Compiler (part of Intel Parallel Studio XE 2017).  Slowly but surely, the compiler is approaching full support for the current Fortran 2008 standard. New Fortran 2008 features added in this release are: TYPE(intrinsic-type) Pointer initialization

Posted in Programming Tagged with: ,

JSON-Fortran 5.1

JSON-Fortran 5.1 is out. There are several new features in this release. I added a get_path() routine that can be used to return the path of a variable in a JSON structure. This can be used along with the traverse() routine

Posted in Programming Tagged with: , ,

Dynamically Sizing Arrays

Often the need arises to add (or subtract) elements from an array on the fly. Fortran 2008 allows for this to be easily done using standard allocatable arrays. An example for integer arrays is shown here: Note that, if using

Posted in Programming Tagged with:

Natural Sorting

Sorting is one of the fundamental problems in computer science, so of course Fortran does not include any intrinsic sorting routine (we’ve got Bessel functions, though!) String sorting is a special case of this problem which includes various choices to consider, for example: Natural

Posted in Programming Tagged with: , ,

SLATEC

The SLATEC Common Mathematical Library (CML) is written in FORTRAN 77 and contains over 1400 general purpose mathematical and statistical routines. SLATEC is an acronym for the “Sandia, Los Alamos, Air Force Weapons Laboratory Technical Exchange Committee”, an organization formed in 1974 by the

Posted in Programming Tagged with: , , ,

Unlimited Private Repos on GitHub

GitHub announced yesterday that all of their paid plans now include unlimited private repositories. They’ve also simplified their pricing scheme, so now there is only one paid plan for individuals for $7 per month. This now includes unlimited private repositories, and these can include collaborators. All

Posted in Programming Tagged with:

JSON-Fortran 5.0

JSON-Fortran 5.0 is out. This release finally brings thread-safety to the library. Note that it does break backward compatibility with previous versions, but hopefully it isn’t too much trouble to modify your code to be compatible with the new release. I’ve provided a

Posted in Programming Tagged with: , ,