I think of FP practices as being young, but *Fortran* supports annotations for explicit inputs, outputs and purity! https://www.moreisdifferent.com/2015/07/16/why-physicsts-still-use-fortran/