Fortran is a strongly typed language, meaning that entities (variables, etc.) have a type that is largely known at compile-time and can be checked by the compiler. In addition to the intrinsic types that existed in FORTRAN 77 (integer, real, complex, logical, character), Fortran 90 added the concept of user-defined types or “derived types”. (FORTRAN 66 and 77 considered DOUBLE PRECISION its own type, which led to some weird carve-outs in the language that persist to this day.)
Former Fortran committee member Jerry Wagener sent this sad news today:
Walt Brainerd passed away on June 4th, 2020. He had cancer of the brain stem.
Walt joined X3J3 in the mid 1970s and was a strong advocate for Fortran for the rest of his life. He authored and co-authored many books on Fortran, taught classes, gave seminars, and ran “The Fortran Company” website.
On X3J3, Walt consistently advocated adding clear modern features and deprecating old, unsafe, features; often against strong opposition. He encouraged the numerical analysis community to take an interest in Fortran development and he was the typesetter for Fortran 90. Throughout all of the Fortran struggles and joys, he was just a good guy.
He was teaching a class at the end of February and had a fall. After he flew home and went to the hospital, they discovered a mass on his brain stem. He was in home hospice when he died. His family was with him.
I met Walt only once, at the “Fortran Geezers” meeting in 2017, but had many online interactions with him. Walt was a tireless supporter of the Fortran language and continued teaching Fortran classes after his retirement. If more details or an official obituary become available, I will update this post.
Yet another post ripped from the headlines of a user question, plus an earlier discussion in another Fortran-related group. The question at hand is: Does Fortran have any “reserved words”? These are identifiers that you must not use for your own variables, procedures, etc. The answer is…
I have often said that my least-favorite feature of the Fortran language is “OPEN on a connected unit”. In most cases, programmers invoke this accidentally and are confused by its behavior. But it does provide a way to do something useful for which the language doesn’t provide an alternative. Let’s explore.
There is very little proper Fortran 77 in the world. Legacy Fortran almost always uses extension from MIL-STD-1753 and we should call most legacy Fortran “Fortran 80” to reflect when those compiler features would have been broadly available.
I agree completely – nearly every bit of code I see someone call “FORTRAN 77” isn’t at all. Sure, there are the obvious things such as INTEGER*4 and STRUCTURE/RECORD that are extensions that never made it into any standard. But I’ll often see INCLUDE or END DO, which were also not part of FORTRAN 77; they were part of another standard, MIL-STD-1753.
Welcome to the new home of the Doctor Fortran blog! Given that I have been retired from Intel for more than three years, it seemed appropriate to give my posts their own home on my web site. With Intel’s permission, I have copied here the posts I wrote while I was an employee. (Apparently four of those posts had been deleted – I was able to recover one of them.)
I hate writing these, but as the years go on there will be more.
Stan Whitlock passed away yesterday (September 3, 2018) a mere six weeks after he was diagnosed with pancreatic cancer that had spread to his neck. He was 70 years old. Many of you may not know Stan’s name, but if you’re reading this blog Stan has undoubtedly touched your Fortran life. Stan joined Digital Equipment Corp. (DEC) in 1976, to work on the TOPS-10 (DECsystem-10) FORTRAN compiler. He had previously been a COBOL programmer for the Federal Reserve Bank of Boston. By the time I met Stan in 1979, he was leading the VAX APL project. Somewhere in the mid 1980s, he returned to Fortran, joining the DEC Fortran 90 project, and eventually he ended up being the project lead. In the Intel years he gained the title “Fortran Architect”, which meant that he helped explain Fortran to other teams at Intel what Fortran required and (re)designed directive syntax so that Fortran could use it.
At the June 2018 meeting of the International Fortran Standards Committee (WG5) in Berkeley, California, we processed 84 comments received during the ISO ballot of the Draft International Standard (DIS). Many of these comments were editorial in nature, some asked for clarification of technical issues and a couple involved small technical changes. There were enough edits, though, to require creation of a new document referred to as an FDIS (Final Draft International Standard). This will go out for a short ballot, and if all goes well the Fortran 2018 standard should be published by the end of the year. Fingers crossed!
Two significant events happened recently in the Fortran world. As I wrote in Doctor Fortran in “DIS, Dat and Doze”, the Draft International Standard for Fortran 2018 was submitted for country ballot back in January. There was an eight-week period for possible translations, though I don’t know that any occurred, and the ballot officially opened on March 9. Each ISO National Body (country standards committee) gets to vote and can Approve, Approve with Comments or Disapprove. The DIS is available for view at the new J3 web site, https://j3-fortran.org – go to Documents > By Year > 2018 > 18-007.
An important milestone in the birth of the new standard revision, Fortran 2018 (formerly Fortran 2015) is upon us! The Draft International Standard (DIS) has been submitted for country balloting. This is one of the final steps in the long process of developing a new standard, so we’re almost there!