Attualmente sto scavando in Fortran e ho trovato la parola chiave pure
che specifica funzioni/subroutine che non hanno effetti collaterali.Uso corretto della parola chiave PURE Fortran
ho un libro, Fortran 90/95 da S Chapman che introduce la parola pure
ma stranamente non fornisce alcuna "buona pratica di codifica" usa.
Mi chiedo quanto si possa usare liberamente questa parola chiave nelle proprie procedure. Guardandomi intorno è ovvio che la maggior parte delle procedure senza effetti collaterali non ritiene necessario includere la parola chiave pure
.
Quindi dove è meglio utilizzato? Solo nelle procedure che si desidera completamente la garanzia non ha effetti collaterali? O forse nelle procedure che si prevede di convertire in procedure elemental
in seguito? (Come le procedure elemental
devono prima essere pure
.)
Bene, provo ad usare le routine 'pure' tutte le volte che posso. Mi costringe a scrivere codice pulito. Tuttavia, solo una piccola percentuale di routine può essere pura ... Ma non ho mai visto alcuna differenza in termini di velocità o simili. –
Non è Fortran 90/95 ma si noti che le procedure 'elemental' possono essere' impure'. – francescalus
@AlexanderVogt "Solo una piccola percentuale"? Mi sembra che la maggior parte delle funzioni/subroutine siano 'pure' se codificate correttamente. Come ho capito dal mio libro, solo le procedure che modificano le variabili specificate con 'intent (in)' o hanno componenti I/O non sarebbero 'pure'. Sembra la minoranza, non la maggioranza, per me. – River