3 ms·
I don't understand why the implementation language of low level libraries should determine a high level language that uses them. In what way are C libraries ina
by gnufx 9y ago
I don't understand why the implementation language of low level libraries should determine a high level language that uses them. In what way are C libraries inaccessible from Fortran, given that it defines interoperability with C?
I'm afraid you need a 10-, or preferably 20-, year perspective, not a week.
- sseagull 9y agoI have been developing in Fortran for years. I just mentioned that as an aside. About C compatiblity: Many C libraries use pointers in their interfaces. Interoperability is indeed defined by the Fortran 2003 standard, which I have used several times to wrap existing C libraries. However, much of the existing code is F90 only (some even F77...), and a vast majority of Fortran developers in the field are not familiar with even modules and other F90 features, let alone iso_c_binding in 2003. Also, newer libraries tend to be C++ as well, which is more difficult (or at least more awkward) to wrap.
- quadruplebond 9y agoIt’s partly the power of library authoring that is moving things I think. To my knowlegdge most post lapack tensor algebra is all C/C++ also. I don’t know Fortran but I am not sure if it has the same flexibility when it comes to generic code and things like writing things like template expression math codes. Finally the fact that groups like Facebook and google are writing their machine learning code in C++ shows that 1 they find it useful and 2 plenty performant. This kinda became a response to the comment above yours sorry.
- sseagull 9y agoIf you don't mind, I'd like to maybe chat with you a bit and get your opinion on some things (and maybe see if I've actually met you before). My (mainly throwaway) email is ytterbium35 (at major email service run by google). If you don't feel like it, feel free to ignore.