wannier90
wannier90 copied to clipboard
Design of `library_interface.F90`
I would like to suggest that module/submodule interface should be used for the api library. Having functions like get_fortran_stderr
is not helpful for the user, and it otherwise complicates the navigation of the interface to find the relevant interface the user would need. Splitting these and making them private to the submodule would simplify the interface.
To properly test if the import works, #444 would be helpful, since that would give a clean environment as if the package was installed on the system. I have implemented something similar in spglib
and that could be adapted here as well.
Also, is there a reason for keeping the functions like set_u_matrix
as global functions instead of class methods?