wavebitscientific / functional-fortran Fortran 440 41 Functional programming for modern Fortran functional-programming fortran