Resources for Portable Programming
This page is a set of pointers to useful references for writing good portable code, for the R developers and for people writing R extensions.
(technically a final draft: currently unavailable). And its
(technically a final draft), and an
of the changes.
, including links to the F77 standard and to draft current standards as well as the correct
of Fortran 77 subprograms. The final draft F2003 standard is
here in PDF
, a program to check against Fortran standards.
POSIX 1003 standards (2008, revised 2013)
: how Unix-alike functions and tools are to behave.
Porting to 64 bit GNU/Linux systems
. Covers a lot of details about 64- vs 32-bit architectures.
The self-styled Filesystem Hierarchy Standard
. Not written to the standard of a standard, but Debian Linux policy.
How to write shared libraries
. Lots of information on GCC 4.0.0 features, including controlling symbol visibility as implemented in R 2.3.0.
. A bounds-checking (etc) tool for GCC 4.
. A debugging tool for ix86 Linux. (See also `Writing R Extensions'.)
Links and selected readings
What Every Computer Scientist Should Know about Floating-Point Arithmetic
by David Goldberg, including Doug Priest's supplement on extended-precision systems (such as
FreeBSD's collection of man pages
(including for some commercial Unixes). And
Unix incompatibility notes
. Not 100% reliable (please don't pretest
, for example).