Automatic Differentiation Built Into LFortran

I recently played around with implementing an AD package based on parameterized types. Most compilers would compile the module(s) containing the AD software. However, when I tried to build and run an actual test program, the only compiler that worked was the most recent (and I guess last) oneAPI 2023 release (both ifort and ifx). All other compilers (and oneAPI up to the last 2023 release) all failed to compile and/or run the test program due to a variety of errors (seg faults etc). I still don’t understand why the compiler developer community can’t get parameterized types to work 100% of the time. I doubt it will ever work as planned (like FORALL). For that reason alone, I would love to see AD built into the language.

1 Like