[petsc-dev] Question regarding updating PETSc Fortran examples to embrace post F77 constructs
Jeff Hammond
jeff.science at gmail.com
Sat Aug 27 00:00:25 CDT 2016
If PETSc has symbols greater than 6 characters, it has never been Fortran 77 compliant anyways, so it's a bit strange to ask permission to break it in another way in the examples.
Sorry for being a pedant but we've had this debate in the MPI Forum and it is false to conflate punchcard Fortran style with any ISO standard. For example, the subroutine PXERBLA is Fortan 90 by definition, no matter how it is implemented.
http://www.eah-jena.de/~kleine/history/languages/ansi-x3dot9-1978-Fortran77.pdf (or equivalent) has details.
On a related note - in case the rabbit hole tempts - MPI nonblocking communication isn't compliant with any version of the spec through Fortran 2008.
One needs the TS 29113 extension to ISO Fortran 2008 to comply rigorously, although we know in practice MPI nonblocking communication works just fine in Fortran because compilers do not avail themselves of every possible optimization allowed by the standard.
Jeff
PS To actually answer the question, modern Fortran isn't terrible if used judiciously. People should embrace it when appropriate.
Sent from my iPhone
> On Aug 26, 2016, at 7:54 PM, Barry Smith <bsmith at mcs.anl.gov> wrote:
>
>
> PETSc users,
>
> We've always been very conservative in PETSc to keep almost all our Fortran examples in a format that works with classic FORTRAN 77 constructs: fixed line format, (72 character limit) and no use of ; to separate operations on the same line, etc.
>
> Is it time to forgo these constructs and use more modern Fortran conventions in all our examples?
>
> Any feedback is appreciated
>
> Barry
>
> Note: it would continue to be possible to use PETSc in the FORTRAN 77 style, this is just a question about updating the examples.
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-dev/attachments/20160826/9815b24d/attachment.html>
More information about the petsc-dev
mailing list