The love-hate relationship everyone had with the Fortran extensions! Graphics, screen formatting, system interfaces, databases, bit manipulation, all there on most systems… but almost all were not portable.
Many have no idea how extensively extended everything was and that no major systems came with C at all, but you could not even enter the HPC market without a Fortran compiler standard on your system.
The first web browser we wrote was in Fortran on a VAX. Totally trivial working with sockets and system calls. Anyone remember having to interface any graphics program to your local (usually “Calcomp-compatible”) graphics libraries or just having a protocol to use on the Web, so you cooked your own programs?
But our bread and butter was analytical codes and we had PRIMES, NOS, NOS/VE, COS, Ultrix, SunOS, Solaris, HP-UX, AIX, VAX/VMS, MVS, DG, OS2, MACs, and others I do not remember in the company and clients with OSes we did not have with no network connections to that we had to port Fortran programs to.
All we wanted was standardization but everyone saw their extensions as a strategic advantage or a tool for locking customers in so no one wanted to add new features to Fortran outside of numeric computation. Beware what you ask for – we got a lot of the standardization partly through attrition and Unix/Linux as well as through the Fortran vendors; but what was lost was immense. If the extensions had been standardized and adopted it is hard to believe many of todays languages would ever have evolved. Cray proposed F- (basically, CoArrays) so long ago it is hard to remember but other companies were not selling multi-processor machines and had no vectorization so they wanted nothing like that in the standard, as just one of a hundred examples where the dark side of standardization held things back.
It is hard to even remember that Fortran was the go-to language for graphics for years, for example. The first relational database I used (RIM0) was Fortran. Now if I want to add databases and graphics to a Fortran program I spend five minutes just sighing first.
Standardization was critical. If you had to use any non-standard Fortran you had to put a request in to a group that provided an in-house standard library for all those platforms and they had to add it or you were not allowed to use it in production code – and Fortran had so little that was standard that included things like getting the date and time or listing files in a directory!
Otherwise your first code was your last because you would spend the rest of the time porting it to all those platforms, which changed constantly.
But I still miss some of those extensions, particularly on the VAX. I remember just about everything being available via Fortran.
A bit back when everyone was voting on Fortran logos and considering mascots everything from T-Rex to rabbits came up, but I do not remember a pig being mentioned. Cute add but I do not think it had much of a chance of catching on. Although to this day we calculate a hog factor for our larger codes, but that would be hard to explain and a high factor is not a good thing!